我正在嘗試創建動態輸入組件,該組件可以在輸入和textarea標記之間互換。我試圖通過使用渲染功能來實現這一點。 (https://vuejs.org/v2/guide/render-function.html#v-model)。通過渲染功能實現v模型不反應
我現在的問題是,v模型只能工作一種方式,如果我直接更改數據屬性,它會更新textarea值,但如果我更改或輸入新數據到textarea它不會更新數據屬性。有誰知道如何使它同時工作? 這裏是我的代碼鏈接代碼筆波紋管就足以說明問題:
const tag = Vue.component('dynamic-tag', {
name: 'dynamic-tag',
render(createElement) {
return createElement(
this.tag,
{
domProps: {
value: this.value
},
on: {
input: event => {
this.value = event.target.value
}
}
},
this.$slots.default
)
},
props: {
tag: {
type: String,
required: true
}
}
})
const app = new Vue({
el: '#app',
data: {
message: ''
},
components: {tag}
})
http://codepen.io/asolopovas/pen/OpWVxa?editors=1011
看起來像碼頭需要更正嗎?謝謝 –
@AndriusSolopovas我同意,文檔似乎掩蓋了這一點。 – Bert