我有一个基本的剔除模型可以使用具有常用功能(分页,排序等)的列表:
ListViewModel.js:
function ListViewModel() {
var self = this;
self.Items = ko.observableArray();
// other props and methods
}
return ListViewModel;
现在,我想为具体的类UsersListViewModel重用(继承)此模型。最好的方法(接受淘汰赛)是什么?在UsersListViewModel内部创建ListViewModel,还是使用新的字段和方法扩展ListViewModel?
现在,我在UsersListViewModel中创建了一个ListViewModel对象,但是我不喜欢这样:
UsersListViewModel:
function UsersListViewModel(model) {
var self = this;
self.List = new ListViewModel();
self.IsInitialized = ko.observable(false);
}
return UsersListViewModel;
过去,当我们不得不做这样的事情时,我们只是使用apply(http://jsfiddle.net/85TeD/1/):
function UsersListViewModel() {
var self = this;
ListViewModel.apply(self);
self.OtherProp = ko.observable("other");
}
如果您想实现完全的经典继承,那么这是一个开始:http : //www.crockford.com/javascript/inheritance.html
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句