반응형
Vue 템플릿에서 'this'를 사용하시겠습니까?
머릿속이 복잡하다:왜 우리가 사용할 수 있는 장소가 보이는지 모르겠다this
Vue.js 템플릿에 있습니다.이제 어떤 걸 써야 할지 모르겠어요.
여기서 몇 가지 사례를 테스트합니다.
new Vue({
el: "#app",
data: function() {
return {
myVar: 'test'
}
},
methods: {
returnText: function() {
console.log('methods returnText !');
return 'return text from methods !';
}
},
computed: {
computedProp: function() {
return 'computed !';
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.2.5/vue.js"></script>
<div id="app">
{{ this.myVar }}<br><!-- this works -->
{{ myVar }}<br><!-- this works -->
<button @click="myVar = 'test without this !'" type="button">
Change text</button><!-- this works --><br>
<button @click="this.myVar = 'test with this !'" type="button">
Change text (not working because of 'this')</button><!-- this NOT works -->
<br><br>
{{ computedProp }} <!-- this works -->
<br>
{{ this.computedProp }} <!-- this works -->
<br><br>
{{ returnText() }} <!-- this works -->
<br>
{{ this.returnText() }} <!-- this works -->
</div>
권장사항은 무엇입니까?
템플릿에서는 사용할 필요가 없습니다.this
, 를 사용합니다.this
와 같은 기능으로mounted()
,created()
, 또는 인methods
, 등. 이 컨텍스트에서는 모든 라이프 사이클훅이 호출되어 호출되는 Vue 인스턴스를 가리키고 있습니다.
https://vuejs.org/v2/guide/instance.html
v-bind는 js 네이티브 'bind' 함수와 같이 기능한다고 생각합니다.예를 들어 함수를 다른 오브젝트에 바인드합니다(다른 경우에는 Vue 인스턴스).
언급URL : https://stackoverflow.com/questions/43188317/use-this-in-vue-template
반응형
'programing' 카테고리의 다른 글
포인터를 전달하는 것이 아니라 C의 값으로 구조물을 통과하는 단점이 있습니까? (0) | 2022.08.16 |
---|---|
할당된 메모리 청크를 읽기 전용으로 표시하는 방법이 있습니까? (0) | 2022.08.16 |
Vue / Vuex : 입력 바인딩된 값이 업데이트되기 전에 트리거된 붙여넣기 이벤트 (0) | 2022.08.16 |
Vuetify로 이미 페이지 처리된 데이터 처리 (0) | 2022.08.16 |
유형 스크립트가 있는 vuejs에서 여러 구성 요소를 가져올 수 없음 (0) | 2022.08.15 |