var view = function(){
self.arry = ko.observable();
self.arry(ko.mapping.fromJS([{prop:'Test'},{prop:'Test'}]));
console.log(self.arry().length);
}
var v = new view();
観察可能な配列長は常にゼロです。正しい長さを得るにはどうすればいいですか?
編集:
JSを更新し、エラーを修正しました。 http://jsfiddle.net/eRHTv/
var view = function(){
var self = this;
self.arry = ko.observableArray();
self.load_items = function(){
setTimeout(function(){
self.arry(ko.mapping.fromJS([{prop:'Test'},{prop:'Test'}]));
}, 100);
}
self.no_items_visible = ko.computed(function(){
return (self.arry().length == 0);
});
self.load_items();
ko.applyBindings(self);
}
var v = new view();
これを実行すると、何の項目のdivが常に表示されません、あなたはself.arry =データを行う場合、ビューは更新されません。あなたは、変数self
を定義することはありませんしている:
var self = this;
第二:ある
これには欠けているか間違っているものがあります。おそらくknockoutjs.comのインタラクティブチュートリアルをチェックしてください。 – Niko
質問はおそらく将来の訪問者を助けるものではありません。私は閉じようとしている。 – nes1983