Col*_*lin 3 knockout-mapping-plugin ko.observablearray knockout.js
小提琴可以在这里找到.
我正在添加一个由它映射的可观察数组ko.mapping.fromJS().
在我看来,我正在使用数组上的属性构建一个URL attr: { href: '/Users/Summary?userId=' + ID() }.
如果我想在我正在使用的数组中添加一个项目self.Users.push().
如果我这样做,我会收到错误ID is not a function.
所以我的问题是将数据添加到数组的正确方法,还是我没有href正确构建attr?
看起来你正试图推动一个普通的对象(没有可观察的对象).您需要先构建它,或将其映射到obsevables.
self.Users.push(new User(data));
Run Code Online (Sandbox Code Playgroud)
要么
self.Users.push(ko.mapping.fromJS(data, mapping));
Run Code Online (Sandbox Code Playgroud)
另一种选择是()从表达式中删除.但是,可观察的ID属性将会表现得很糟糕.