【发布时间】:2020-08-14 00:53:38
【问题描述】:
我正在尝试通过在 items 数组中传递值来绑定 v-model。但是绑定没有正确发生..
这里的最终目标是使用商店。所有这些值都用于多个“向导”组件。
如果我直接给 v-model 一个值,它就可以工作。例如v-model="income",但是我需要它将每个绑定到不同的数据源。所以我尝试从具有属性 fieldName 的对象类别中传递它
<b-table striped hover :items="categories" >
<template v-slot:cell(Adjustments)="data">
<textInput
v-model="data.item.fieldName"
></textInput>
</template>
</b-table>
在这里我也尝试将 fieldNames 作为字符串“income”传递,目前未定义收入。
export default {
components:{ textInput },
computed:{
income:{
get(){
return this.incomeTotal
},
set(value){
this.incomeTotal = value
}
},
rent:{
get(){
return this.rentTotal
},
set(value){
this.rentTotal = value
}
}
},
data:function() {
return {
rentTotal:'1.00',
incomeTotal :'4.00',
categories:[
{ "Category":'Income', "Your Amount": '$0.00','fieldName':income},
{ "Category":'Rent', "Your Amount": '$0.00','fieldName':rent},
]
}
}
关于如何让它发挥作用的任何提示,或关于实现我目标的不同/更好方法的建议?
【问题讨论】:
-
您想根据条件将
:items传递给b-table? -
不完全是,我试图为类别数组中的每个项目设置
v-model = fieldName。所以在这种情况下.. 将有两个输入字段 1 带有v-model=income,另一个带有v-model = rent -
所以你想将一个数组传递给
v-model,这是两个数组的连接?他们的名字是 store infieldNameproperty? -
no not an array..
fieldName属性表示在computed..内具有 get/set 的对象。 -
我明白了,现在你想在
fieldName上设置 v-model 吗?
标签: javascript vue.js bootstrap-vue