Vuejs2 如何将vue单个组件模板部分拆分为更小的子模板
我的应用程序正在构建中vuejs@2具有多个表单,大多数表单使用“添加”和“重置”按钮共享同一html模板。和相同的方法一样,resetForm会使“item”属性为空并重置表单,create方法会将该项发送到后端Vuejs2 如何将vue单个组件模板部分拆分为更小的子模板,vuejs2,vue-component,vue.js,Vuejs2,Vue Component,Vue.js,我的应用程序正在构建中vuejs@2具有多个表单,大多数表单使用“添加”和“重置”按钮共享同一html模板。和相同的方法一样,resetForm会使“item”属性为空并重置表单,create方法会将该项发送到后端 <div class="row"> <div class="action"> <button class="btn btn-white" @click="create()">✎ Add</butto
<div class="row">
<div class="action">
<button class="btn btn-white" @click="create()">✎ Add</button>
<button class="btn btn-white" @click="resetForm()">❌ Reset</button>
</div>
</div>
✎ 添加
❌;重置
我可以通过mixin与每个组件共享方法,但不能以相同的方式共享“模板部分”。如何处理这种情况
我试图创建组件创建重置按钮,但我无法触发父方法,因为每个组件都封装了其功能,并且不允许从子组件修改道具。重置父窗体时需要执行这些操作。不允许组件修改道具,但如详细说明,子组件可以与父组件通信 在Vue.js中,父子组件关系可以概括为道具下降、事件上升。父对象通过道具将数据向下传递给子对象,子对象通过事件向父对象发送消息。让我们看看他们接下来是如何工作的 以下是将道具传递给chile元素的代码:
<div>
<input v-model="parentMsg">
<br>
<child v-bind:my-message="parentMsg"></child>
</div>
HTML:
{{total}}
JS:
Vue.component('button-counter'{
模板:“{counter}}”,
数据:函数(){
返回{
柜台:0
}
},
方法:{
增量:函数(){
这是一个计数器+=1
此.$emit('增量')
}
},
})
新Vue({
el:“#计数器事件示例”,
数据:{
总数:0
},
方法:{
incrementTotal:函数(){
此值为1.total+=1
}
}
})
组件不允许修改道具,但如详细说明,子组件可以与父组件通信
在Vue.js中,父子组件关系可以概括为道具下降、事件上升。父对象通过道具将数据向下传递给子对象,子对象通过事件向父对象发送消息。让我们看看他们接下来是如何工作的
以下是将道具传递给chile元素的代码:
<div>
<input v-model="parentMsg">
<br>
<child v-bind:my-message="parentMsg"></child>
</div>
HTML:
{{total}}
JS:
Vue.component('button-counter'{
模板:“{counter}}”,
数据:函数(){
返回{
柜台:0
}
},
方法:{
增量:函数(){
这是一个计数器+=1
此.$emit('增量')
}
},
})
新Vue({
el:“#计数器事件示例”,
数据:{
总数:0
},
方法:{
incrementTotal:函数(){
此值为1.total+=1
}
}
})
Vue.component('button-counter', {
template: '<button v-on:click="increment">{{ counter }}</button>',
data: function () {
return {
counter: 0
}
},
methods: {
increment: function () {
this.counter += 1
this.$emit('increment')
}
},
})
new Vue({
el: '#counter-event-example',
data: {
total: 0
},
methods: {
incrementTotal: function () {
this.total += 1
}
}
})