v-for 循环时直接使用 v-model 绑定value报错

v-for 循环时直接使用 v-model 绑定value报错
报错vue v-model directives cannot update the iteration variable ‘x’ itself
将 v-model 直接绑定到 v-for 迭代别名。这将无法修改 v-for 源数组,因为写入别名就像修改函数局部变量一样。考虑使用一个对象数组并在对象属性上使用 v-model。
原因:v-model 不可以直接修改 v-for 循环迭代时别名上的数据,但是,可以通过 index 下标来引用所需的数据,可以达到相同目的


<FormItem v-if="outputNameList.length !== 0" :label-width="40">
	<CheckboxGroup v-model="formItem.exposedOutput" @on-change="configChanged('exposedOutput')">
		<Checkbox v-for="(value,index) in outputNameList" :key="'outputCheckbox'+ index" :label="value">
			// 原始checkbox的选项展示用span,想改为input,可以修改选项
			<!--<span>{{value}}</span>-->
			// 直接绑定 v-for循环的value成员会报错
			// <Input v-model="value"/>
			// 可以通过 index 下标来引用所需的数据,可以达到相同目的
			<Input v-model="outputNameList[index]"/>
		</Checkbox>
	</CheckboxGroup>
</FormItem>