Javascript KnockoutJS可观测数组和计算可观测值
我有一个JSON数组、两个列表(由一个计算的可观察项填充)和一个选定项数组(JSON数组中的项ID) 所选项目保存在ObservalArray中,我希望一个列表中填充数组中的项目,另一个列表中填充数组中不包含的所有项目 这在初始化时效果很好,但是如果我尝试将项目添加到selected items数组中,更改不会反映在UI或两个列表数组中Javascript KnockoutJS可观测数组和计算可观测值,javascript,knockout.js,Javascript,Knockout.js,我有一个JSON数组、两个列表(由一个计算的可观察项填充)和一个选定项数组(JSON数组中的项ID) 所选项目保存在ObservalArray中,我希望一个列表中填充数组中的项目,另一个列表中填充数组中不包含的所有项目 这在初始化时效果很好,但是如果我尝试将项目添加到selected items数组中,更改不会反映在UI或两个列表数组中 有人能给我指出正确的方向吗?在您的示例中,您似乎把myViewModel拼错了 更改此项: myViewModel = new viewModel(); ko
有人能给我指出正确的方向吗?在您的示例中,您似乎把
myViewModel
拼错了
更改此项:
myViewModel = new viewModel();
ko.applyBindings(myViewModel);
viewModel.witnessArray.push(2);
为此:
var myViewModel = new viewModel();
ko.applyBindings(myViewModel);
myViewModel.witnessArray.push(2);
然后你的小提琴例子就可以了。我已经做了这些更改并更新了您的,它可以正常工作
您可能想研究一下knockout projections插件,它允许您以更高效的方式实现同样的目标。看看这个啊。。。感谢您指出这一点并提供有关投影插件的提示:D@Tim没问题,伙计。很高兴我能帮忙
var myViewModel = new viewModel();
ko.applyBindings(myViewModel);
myViewModel.witnessArray.push(2);