我正在将应用程序从Vue 1.x迁移到2.0.3。 在此应用程序中,我有几个选择,其中每个v模型都绑定到数组的单个索引。 这在Vue 1.x中没有问题,但在版本2中不会更新。 我相信这是一个潜在的错误。
我在这里重现了这个问题:
https://jsfiddle.net/peterkorgaard/a7vvz753/18/
2.0.3
https://jsfiddle.net/peterkorgaard/a7vvz753/18/
我正在调查这个。 似乎无法正确地观察选择
@peterkorgaard我在这里更新小提琴手https://jsfiddle.net/defcc/a7vvz753/20/ ,您可以使用这种解决方法。
有关更多信息,请查看此http://vuejs.org/guide/reactivity.html#Change -Detection-Caveats
我有同样的问题。
@defcc您的解决方案可以解决我们已经知道模型中有多少项的问题。 如果将模型从数组更改为对象,该怎么办?
您应该使用对象类型,因为模型绑定在内部实现中使用model [index] = 。 如果使用数组类型,则无法观察到该值。 http://vuejs.org/guide/list.html#Caveats
您可以在创建选择时初始化选择,并在selectBoxes数据更新后更新选择。
@defcc Bravo,这个解决方案对我来说很好。 非常感谢!
谢谢@defcc澄清了这一点。 在解决问题之前,我将使用此替代方法。 感谢大家在Vue上所做的出色工作。 我真的很惊讶
最有用的评论
您应该使用对象类型,因为模型绑定在内部实现中使用model [index] = 。 如果使用数组类型,则无法观察到该值。 http://vuejs.org/guide/list.html#Caveats
您可以在创建选择时初始化选择,并在selectBoxes数据更新后更新选择。
我在这里更新提琴手https://jsfiddle.net/defcc/a7vvz753/21/