我的data里面有個值是字典的對象: config_template: {},
這個值會被后端返回的數據填充,填充后大概是這樣的:
u 'config_template': { u 'startShowTime': u '-1', u 'name': u 'DoubleXp', u 'eventDict/paraDict/BetCoins': u '0.02', u 'version_min': u '2.4.0', u 'expiration': u '2d', u 'localFeature': u 'BetCoins', u 'eventDict/event': u 'MultipleXPEvent', u 'type': u 'eventCmd' }
現在我要在template中,把這些字段都渲染成輸入框,用v-model雙向綁定
開始是這樣寫的:
<el-form-item v-for="(v,k) in config_template" :label="k" :key="k" v-if="k!='expiration' && k!='eventDict/paraDict/BetCoins' && k!='startShowTime'"> <el-input :v-model="config_template.k" :prop="k" :value=“v"></el-input> </el-form-item>
發現頁面中雖然渲染出了數據,但是並沒有雙向綁定,原來是輸入框中的數據是由 value屬性渲染出來的, 也就是v-model並沒有生效
改成 v-model="config_template.k" :v-model="v" 都不行
試了一番,最后用 v-model=config_template[k] 才成功,之前都沒有這樣用過屬性,都是直接點的