【发布时间】:2012-07-25 07:02:07
【问题描述】:
http://jsfiddle.net/tim3046/jtmY3/2/
我让 observables 部分工作,因为它更新了顶部 par 字符串。
这就是我订阅的内容,所以我想知道这部分是否有问题,因为当我添加一个高尔夫球手时,它具有当前选择的球场标准杆。 (即)我可以让 2 个高尔夫球手在一个球场上,3 个在另一个球场上,所以当单选按钮被点击时,它所做的唯一事情就是更改要添加的下一个高尔夫球手的标准杆。
self.site.subscribe(function (newValue) {
var len = self.golfers().length;
for (var i = 0; i < len; i++) {
self.golfers()[i].par(self.availableCourses()[self.site()].courseP);
}
});
这里是我有可用课程的地方
self.availableCourses = ko.observableArray([
{ name: ko.observable("Fort Cherry Golf Club"),
courseP: [ko.observable(4), ko.observable(4), ko.observable(4), ko.observable(5), ko.observable(3), ko.observable(4),
ko.observable(4), ko.observable(4), ko.observable(4), ko.observable(4), ko.observable(4), ko.observable(3), ko.observable(4),
ko.observable(5), ko.observable(4), ko.observable(3), ko.observable(4), ko.observable(4)]
},
{ name: ko.observable("Lake View Golf Course"),
courseP: [ko.observable(4), ko.observable(4), ko.observable(4), ko.observable(3), ko.observable(5), ko.observable(4),
ko.observable(5), ko.observable(3), ko.observable(4), ko.observable(4), ko.observable(4), ko.observable(3), ko.observable(4),
ko.observable(5), ko.observable(4), ko.observable(3), ko.observable(4), ko.observable(5)]
}
]);
【问题讨论】:
-
那是太多代码了。请归结为相关元素。
-
我不确定我可以取出什么以及我不能取出什么,因为它需要它才能正常工作。基本上我想做的是订阅我的视图模型以检测和更改然后刷新它。这是我发现的一个例子,它正在做我想做的事情,但使用 viewModel 作为变量而不是函数jsfiddle.net/rniemeyer/TTGbH
标签: knockout.js refresh viewmodel