有什么方法可以遍历出动态的v-model

<div v-for="(i) in 5" :key="i">
      <van-radio-group v-model="checkedTwo" direction="horizontal">
      <van-radio :name="'left_'+i">van-radio>
      <van-radio :name="'right_'+i">van-radio>
      van-radio-group>
div>
 const listData = reactive({
      checkedTwo: "",
    });

有什么方法可以遍历出动态的v-model,想要它遍历出来后跟这个动态name一样在结尾处添加一个'_'+i

vue本身是基于数据驱动的,你想要动态v-model,为啥不想想直接定义一个数组,放到v-for去遍历呢,你可以这样做:


<div v-for="(item,index) in checkedData" :key="index">
      <van-radio-group v-model="item+'_'+index" direction="horizontal">
      <van-radio :name="'left_'+index">左van-radio>
      <van-radio :name="'right_'+index">右van-radio>
      van-radio-group>
div>
 const listData = reactive({
      checkedData:[
        "","","","",""
        ]
    });

v-for="(item,i) in items"
这样?

直接for循环遍历v-model对应的变量就好了

你这么做的思路是错的。v-model的处理需要在绑定前确定,也就是说,页面控件绑定v-model的值的时候,v-model里面的遍历已经完成了。要不然,要data做什么?
通常的做法是:
1、在data里面定义v-model指向的初始值,一帮可以给空值。如:
data:{
modelData:[]
}
2、在 mounted函数里面写对数据的处理。
mounted() {
modelData:[
{
a:"123",
b:123
},{
a:"123",
b:123
}
]
}
3、最终给控件绑定的是modelData。

vue用的是javascript6 ,javascript6的精神是被动刷新页面,也就是框架自动监视data参数里面定义的变量,发现变量改变就会自动更新变量被调用的相关组件,所以你不用操心控件的状态,只要你在js里面修改变量,控件就改变了。这样,你想怎么处理数据,实际上跟页面显示是分离的,改完之后他自己就会绑定新的数据。
而不是用像javascript5里面,你处理完数据还得处理页面的显示。