여기에 두 가지 문제가 있습니다. 첫 번째는 내가 별을 올바르게 렌더링 할 수 없다는 것입니다. data()
함수의 값을 변경하면 할 수 있지만 함수 콜백 방식으로 수행하려면 작동하지 않습니다 (아래 주석 참조). 여기서 뭐가 잘못 됐어? Vue의 수명주기와 관련이 있습니까?Vue.js의 함수 콜백에 제대로 표시되지 않는 내용
둘째는 텍스트 비율을 제출하고 텍스트 영역의 콘텐츠를 제출하고 페이지를 새로 고침 할 때 콘텐츠를 페이지에 렌더링하고 <textarea></textarea>
을 대체해야합니다.
여기 JSFiddle을 만들고 싶지만 Vue의 단일 파일 구성 요소를 만드는 방법을 모르겠다. 정말 도움이된다. 보인다 무엇
<div class="order-comment">
<ul class="list-wrap">
<li>
<span class="comment-label">rateA</span>
<star-rating :data="dimensionA"></star-rating>
</li>
</ul>
<div>
<h4 class="title">comment</h4>
<textarea class="content" v-model="content">
</textarea>
</div>
<mt-button type="primary" class="mt-button">submit</mt-button>
</div>
</template>
<script>
import starRating from 'components/starRating'
import dataService from 'services/dataService'
export default {
data() {
return {
dimensionA: '' //if I changed the value here the star rendered just fine.
}
},
components: {
starRating
},
methods: {
getComment (id) {
return dataService.getOrderCommentList(id).then(data => {
this.dimensionA = 1
})
}
},
created() {
this.getComment(1) // not working
}
}
</script>
데이터가'get' 메소드이어야합니까? – whatAboutJohn
다음은 문제를 재구성하는 데 도움이되는 단일 파일 구성 요소가 아닌 기본 구성 요소를 사용하는 기본적인 방법입니다. https://jsfiddle.net/mjvzbqvv/ –
@whatAboutJohn'data()'는 구성 요소 내부의 함수 여야합니다. 무슨 뜻이야? –