我正在尝试编写Vue .sync演示程序,我对使用kebab-case prop时听不到更新事件感到困惑。这样。
<sync-input v-bind:input-value.sync="message"></sync-input>
Vue.component('sync-input',{
props:{
inputValue: String
},
template: `
<div>
<label>{{inputValue}}</label>
<input type="text" v-bind:value="inputValue" v-on:input="$emit('update:input-value', $event.target.value)">
</div>
`
})
但是如果我使用单个单词prop,它就可以工作。
<sync-input v-bind:title.sync="message"></sync-input>
Vue.component('sync-input',{
props:{
title: String
},
template: `
<div>
<label>{{title}}</label>
<input type="text" v-bind:value="title" v-on:input="$emit('update:title', $event.target.value)">
</div>
`
})
我的代码有问题吗?还是一个错误?