2016-11-28 1 views
0

Я использую Knock out для привязки разных разделов на странице. У меня есть две модели данных модели для каждого раздела. При изменении элемента в одной модели представления, основанной на том, что хотите изменить другой элемент в другом представлении Model. В каждом представлении данных модели есть поле идентификатора для идентификации каждого из данных.Как обновить данные модели модели из другой модели представления в Knockout

+0

Проверьте это - http://stackoverflow.com/questions/9892124/whats-the-best-way- of-linking-synchronizing-view-models-in-knockout – gkb

+0

@gkb Как найти по ID и обновлению? Тот же идентификатор используется в обеих моделях View Model – James

+1

. Я бы предложил предоставить некоторый код, который представляет определенную задачу, которую вы хотите достичь. – gkb

ответ

2

Вы можете просто передать одну из модели представления и другой вид модели:

var ViewModel1 = function() { 
    var self = this; 
    self.selectedItem = ko.observable(); 
}; 

var ViewModel2 = function(viewModel) { 
    self = this; 
    self.content = ko.observable(); 
    viewModel.selectedItem.subscribe(function(){ 
     self.content('value changed') 
    }); 
}; 


var viewModel1 = new ViewModel1(); 
var viewModel2 = new ViewModel2(viewModel1); 

ko.applyBindings(viewModel1, document.getElementById("part1")); 
ko.applyBindings(viewModel2, document.getElementById("part2")); 
Смежные вопросы