Cara untuk mengikat atribut yang dikira dengan nilai input#paramsSetInput dalam vue
<p id="paramsSetWrap">
<input id="paramsSetInput" type="hidden" data-key="params" v-model="paramsSetData" :value="paramsValue">
<p v-for="(param,index) in paramsSetData">
<input type="text" class="col-sm-2" placeholder="key" v-model="param.key" :value="param.key">
<input type="text" class="col-sm-2" placeholder="title" v-model="param.title" :value="param.title">
<input type="text" class="col-sm-3" placeholder="value" v-model="param.value" :value="param.value">
<select name="" class="col-sm-3" id="" placeholder="type" v-model="param.type" :value="param.type">
<option value="string">字符串</option>
<option value="number">数字</option>
<option value="date">日期</option>
<option value="time">时间</option>
</select>
<input type="button" class="col-sm-2" value="删除" @click="deleteParam(index)">
</p>
<input type="button" class="col-sm-11" value="添加参数" @click="addParam">
</p>
new Vue({
el: "#paramsSetWrap",
data: {
paramsSetData: [{key: "", value: "", title: "", type: "string"}],
},
methods: {
deleteParam: function (index) {
this.paramsSetData.splice(index, 1);
},
addParam: function () {
this.paramsSetData.push({key: "", value: "", title: "", type: "string"});
}
},
computed:{
paramsValue:function(){
return this.paramsSetData;
}
}
});
Dalam ayat ini, kerana anda telah mengikat
v-model
又绑定了:value
,由于v-model
是数据双向绑定,所以写的:value
ia tidak akan berkuat kuasa.Alih keluar v-model, jika tidak v:bind:value tidak akan berfungsi.
v-model bertanggungjawab untuk memantau peristiwa input pengguna untuk mengemas kini data, mengendalikan data secara langsung dan nilai input akan berubah pada masa yang sama, yang dipanggil pengikatan dua hala.
: nilai hanya memberikan nilai input Secara langsung, nilai input data akan ditukar, yang bercanggah dengan perkara di atas dan tidak akan berkuat kuasa.
Ubah suai seperti berikut.
Selepas mengikat v-model, cuma kira dalam js, ia akan diikat secara automatik