嗨我是Vue的新手,我想问一个关于将父组件值绑定到子组件的问题,以及当我希望更改父组件的值时,该值发生更改。在Vue 2.4中将数据从子项转移到父项的正确方法?
我做了一个JS Fiddle显示我在哪里做到这一点,但我很困惑它为什么它的工作方式。如果我将一个对象传递给prop,它会绑定这些值,但如果我按原样传递它们,则会出现'变种'错误。
JS:
var demo = new Vue({
el: '#demo',
data: {
Name: { firstName: "Bonjur", secondName: "Captain"},
firstName: "Hello",
secondName: "World",
}
});
Vue.component('working', {
template: '<div>' +
'First: <input v-model="names.firstName" />' +
'Second: <input v-model="names.secondName" /> ' +
'</div>',
props: {
names: null
}
})
Vue.component('broken', {
template: '<div>' +
'First: <input v-model="first" />' +
'Second: <input v-model="second" /> ' +
'</div>',
props: {
first: null,
second: null
}
})
HTML
<div id="demo">
<working :names="Name"></working>
<broken :first="firstName" :second="secondName" ></broken>
<p> {{Name.firstName}} {{Name.secondName}} </p>
<p> {{firstName}} {{secondName}} </p>
</div>
我最初的目标是有“演示” Vue的对象是主要的数据对象,我要回发到服务器,并有几个组件以他们自己独特的方式编辑主“演示”对象中的特定数据部分,所以实际上只是一个问题的分离。
欢迎任何有关使用Vue设计应用程序的意见/建议。
我也读过,你可以听到孩子的事件,并改变父母的价值。
如何设计或打算在Vue js v2.4中完成这种Child to Parent数据绑定?
为什么上面的例子按照它的方式工作?
谢谢你为一个伟大的解释 –
你可以更新你如何做相同,但与对象的问题? –