嗨,我正在用Knockout.js构建多页应用程序,并且我面临编写太多重复代码的问题。
例如,在我的一种观点中,我有:
var personVm = function {
//properties here
}
personVm.prototype {
//extensions & methods here
}
而且在某些时候我必须在其他视图中使用相同的ViewModel。因此我最终重复了代码。
我搜索了解决方案,而require.js是最常见的。。但就我而言,require.js不适合并且我不能使用它。因此,如果有人分享一些解决这个问题的方法,我将感到高兴。
更新:
为了进一步阐明我的问题,我需要一种容器,可以从中获取给定ViewModel的实例以获取不同的视图(我从asp.net获得)
最佳答案
您可以使用自己的敲除ko.utils.extend
var personVm = function {
//properties here
}
personVm.prototype {
//extensions & methods here
}
然后,以后
var superHeroVm = function() {
var self = this;
self.specialPower = ko.observable();
ko.utils.extend(self, new personVm());
}
关于javascript - 重用Knockout.js ViewModels,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22967005/