2つの異なるViewModelでモデルが必要なので、私のモデルを私のViewModelから分離しようとしています。だから私はこれにしようとしました:ノックアウト:observable.subscribeの命令の前に文脈が変更されました
var ConversationManager = {
conversations: ko.observableArray([
{id: 3, receiver:'Toto'}
])
};
function ConversationDialogViewModel(){
var self = this;
ConversationManager.conversations.subscribe(function(context){
console.log('Before :', context); // context.test == true ???
for(var i = 0; i < context.length; i++){
if(context[i].id % 2 == 0 && !context[i].test){
console.log('Insertion Called');
context[i].test = true;
}
}
console.log('After :', context);
});
ConversationManager.conversations.push({id: 4, receiver:'Jean'});
ConversationManager.conversations.push({id: 5, receiver:'Paul'});
ConversationManager.conversations.push({id: 6, receiver:'Bleu'});
}
どういうわけか、最初にconsole.logで、私は「ジャン」を押すと、ブラウザでは、変数「テスト」は存在し、正しくも、私の前にtrueに設定されています実際にJSにそれをさせるよう伝えます。そんなことがあるものか ? そして、問題を正しく区別していますか?