2
我有一个基础视图模型如下:的Javascript knockout.js功能覆盖
var myApp = myApp || {};
myApp.BaseViewModel = function() {
self = this;
self.var1 = ko.observable();
self.messageToSay = Function() {
alert("in Base view model");
};
self.sayMessage = function() {
self.messageToSay();
}
};
而且我从BaseViewModel继承如下一个视图模型:
var myApp = myApp || {};
myApp.HomeViewModel = function() {
var self = this;
ko.utils.extend(self. new myApp.BaseviewModel());
self.messageToSay = Function() {
alert("in Home view model");
};
};
var vm = new myApp.HomeViewModel();
ko.applyBindings(vm, vm);
的问题是,当我执行vm.sayMessage()总是返回“在基本视图模型中”而不是“在主视图模型中”。如何获取HomeViewModel中的messageToSay()方法以覆盖BaseViewModel()中的方法?
感谢 马丁