如何在Vue中生成数组,然后在对象内的项目上使用v-model?

时间:2019-04-21 18:33:35

标签: javascript arrays vue.js

我正在使用从api获取的数据生成一个数组,该数组返回一个大小;我使用此大小来构建插入对象{ selected: null }的数组。

在我看来,正在遍历此内容,我正在生成选择元素,然后将其绑定到selected。不幸的是,生成数组会导致所有选择改变,而不仅仅是一个。

如下面的jsfiddle所示,如果将数组直接构建到数据中,则可以正常工作,但是无法通过方法生成数组。

https://jsfiddle.net/Crotanite/gh50s39e/

1 个答案:

答案 0 :(得分:0)

这实际上不是method()的问题,在这种情况下,method()的行为应与data()相同。

真正的问题在于javascript方法-> .fill(),因为它创建了指向数组中所有项目的引用指针。这可能是一本好书-JS pass by ref vs pass by val

我尝试了一种变通方法,避免使用.fill(),而是通过method()中的简单循环填充数组。附加一个jsfiddle链接和一个有效的示例。