입문적인 글로벌 컴포넌트와 로컬 컴포넌트를 이해하기 전에, "컴포넌트화"의 개념이 무엇인지 이해해야 합니다.
컴포넌트화는 컴포넌트 또는 페이지의 일부로 이해될 수 있습니다. 예를 들어 아래 그림에서 빨간색 상자 부분을 컴포넌트로 나눈 다음 데이터를 반복하면 됩니다. 이 구성 요소는 홈 페이지, 목록 페이지 등 어디에서나 사용할 수 있으며 현재 페이지에만 국한되지 않습니다.
우리는 Vue의 글로벌 구성 요소와 로컬 구성 요소를 시작하기 위해 여전히 가장 간단한 할 일 목록을 사용합니다.
를 구성 요소로 사용하고 전역 구성 요소와 로컬 구성 요소가 각각 어떻게 구현되는지 살펴보겠습니다.글로벌 컴포넌트
<div id="root">
<div>
<input v-model="inputValue" />
<button @click="handleSubmit">提交</button>
</div>
<ul>
<todo-item v-bind:content="item" v-for="item in list"></todo-item>
</ul>
</div>
<script>
Vue.component("TodoItem",{
props:['content'],
template:"<li>{{content}}</li>"
})
new Vue({
el:"#root",
data:{
inputValue:'',
list:[]
},
methods:{
handleSubmit:function(){
this.list.push(this.inputValue)
this.inputValue = '' //每次提交后清空
}
}
})
</script>Vue.comComponent()를 사용하여 글로벌 컴포넌트를 정의하면 이 컴포넌트를 id="root"뿐만 아니라 현재 페이지에서도 사용할 수 있습니다.
Vue.component("TodoItem",{
props:['content'],
template:"<li>{{content}}</li>"
})TodoItem은 구성 요소의 이름입니다. HTML에서
props를 사용하여 구성 요소 스타일을 정의하거나 템플릿을 정의합니다.
또한 필요합니다.
자식 구성 요소에 값을 전달하는 상위 구성 요소
todo-item v-bind:content="item" v-for="item in list"></todo-item>
로컬 컴포넌트
동일한 효과를 위해 로컬 컴포넌트를 사용해 보겠습니다.
<script> var TodoItem={ props:['content'], template:"<li>{{content}}</li>" } new Vue({ el:"#root", data:{ inputValue:'', list:[] }, components:{ 'TodoItem':TodoItem }, methods:{ handleSubmit:function(){ this.list.push(this.inputValue) this.inputValue = '' //每次提交后清空 } } }) </script>
components:{
'TodoItem':TodoItem
},위 내용은 Vue 시작하기: Todolist 예제 글로벌 구성 요소 및 로컬 구성 요소 시작하기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!