Javascript 具有多个视图模型的嵌套绑定
请帮助我解决这个问题。我从过去3周就一直在这个问题上。 我有一个html文件,其父div id通过创建一个javascript对象绑定到knockout observable。在html的父div id中,有另一个子div id,我需要与第二个javascript对象绑定并填充foreach块。但我无法实现此方案。如果有人帮助我解决此方案,我将非常高兴Javascript 具有多个视图模型的嵌套绑定,javascript,html,knockout.js,Javascript,Html,Knockout.js,请帮助我解决这个问题。我从过去3周就一直在这个问题上。 我有一个html文件,其父div id通过创建一个javascript对象绑定到knockout observable。在html的父div id中,有另一个子div id,我需要与第二个javascript对象绑定并填充foreach块。但我无法实现此方案。如果有人帮助我解决此方案,我将非常高兴 I have mentioned here some dummy example of my scenario.Please ignore mi
I have mentioned here some dummy example of my scenario.Please ignore minor errors of naming convention and trailing quotes as its just a dummy code.
HTML文件
(div id“main”绑定到MainModel.js。在MainModel.js的对象上,调用showCateogaries()方法,并从该方法调用getCategories1(),该方法填充类别的值。但实际上没有填充,错误是“无法解析绑定”)
MainModel.js
subminmodel.js
showMain没有在mainModel上声明?mainModel(大写M)没有在代码中声明为anywere?@Anders:这是一个伪代码,所以我没有提到所有细节。this.showMain=ko.可观察(假);在MainModel.js中提到,尾随引号存在,命名约定也正确遵循。如果我提到这一点,代码工作正常。categories=ko.observearray([]);mainModel.js中的getCategories1()。但由于我希望它们在单独的js中,所以问题就来了
<div id="main" data-bind="visible: showMain">
<div id="subMain" >
<p data-bind="text: name"></p>
<ul id="tabArea" data-bind="foreach : categories">
<li data-bind="text: $data.categoryname ></li>
</ul>
</div>
</div>
var main1=new MainModel(); //Main View Model
ko.applyBindings(main1,$('#main')[0]);
main1.showCateogaries();
function(ko,subMainModel){
var mainModel =function(){
this.showCategories = function(){
subMainModel.getCategories1();
}
}
}
function(ko){
this.categories = ko.observableArray([]);
this.getCategories1 = function(){
// some code goes here
this.categories(categoryArray.reverse());
};
}