vue要怎么修改循环绑定的值呢?

<div  v-for="point in points"

:key="point.id">

<input v-model="point.name"/>

<input v-model="point.value"/>

</div>

<script>

export default {

props: {

points: {

type: Array

}

}

}

</script>

如上图所示,传入points数组,里层一旦修改输入框的值就会报错[vuex] do not mutate vuex store state outside mutation handlers,这是因为props对象是不可修改的,那要怎么改呢?


回答:

推荐你在组件内部的data函数中创建个变量进行接收props传入的值,记得使用深拷贝,或者对props的数据进行双向绑定,在model函数中进行注册列如

model:{

props:"你得变量名",

event:"change"

}

还需要再methods中进行emit

changevalue(){

this.$emit('change',要更新的值)

}

请参考


回答:

1.用computed计算属性的set和get对传入的props做代理
2.用toRef做代理
3.用v-model:xx做双向绑定
4.用defineModel简化defineProps和defineEmit

以上是 vue要怎么修改循环绑定的值呢? 的全部内容, 来源链接: utcz.com/p/935225.html

回到顶部