【发布时间】:2012-10-15 06:51:43
【问题描述】:
代码如下:EmployeeModel是viewModel,问题是当我改变一个item的属性——employees(obs数组)中的deletedFlag,deletedItems没有更新。
我该如何解决这个问题?
function Employee(data) {
this.employeid = ko.observable(data.employeid);
this.name = ko.observable(data.name);
this.isactive = ko.observable(data.isactive);
this.deletedFlag = ko.observable(false);
}
var EmployeeModel = function () {
var self = this;
self.employees = ko.observableArray([]);
self.deletedItems = ko.computed(function () {
return ko.utils.arrayFilter(self.employees(), function (item) {
return item.deletedFlag == true;
});
}, this);
}
编辑:以下代码将数组中的一项标记为删除
self.removeEmployee = function (employee) {
employee.deletedFlag(true);
};
【问题讨论】:
-
希望你在最后应用了 ko 绑定
ko.applyBindings(new EmployeeModel()); -
也发布一些 HTML 来玩弄它
标签: javascript mvvm knockout.js