我正在使用多个视图模型,我通过创建一个 MasterModel 函数来处理它,稍后我将其作为参数传递给applyBindings
.
基本上是这样的:
var MasterModel = function(){
this.user = new UserViewModel();
this.department = new DepartmentViewModel();
}
ko.applyBindings(MasterModel);
现在,我希望能够从 Javascript 访问我的一个视图模型中的函数,但我遇到了麻烦。
如果我将其更改为以下内容,我设法调用了 viewmodel 函数applyBindings
:
var mm = new MasterModel();
ko.applyBindings(mm);
mm.user.sayHi();
但后来我发现以下内容停止工作:
<ul data-bind="foreach: department.list()">
<li data-bind="text: department.getDemo($data)"></li>
</ul>
消息:部门未定义
正如您在此处看到的,它在使用时完美运行ko.applyBindings(MasterModel);
有什么解决办法吗?