2013-06-13 3 views
-1

У меня возникают проблемы с нокаутами «С». Я могу привязываться. Я могу связать вложенный объект без проблем, но не вложенную модель. я делаю все это неправильно или это выходит за рамки «с» привязки.Knockout With Binding Issue

var viewModel = function(){ 
    var self = this; 

    self.anObject = { 
     test: ko.observable("I'm and object bound by WITH.") 
    } 

    var aFunction = function(){ 
     var self = this; 
     self.test = ko.observable("I would like to be bound by WITH"); 
    } 

}; 
ko.applyBindings(new viewModel()); 

вот моя скрипка http://jsfiddle.net/t3T5N/1/

ответ

-1
var viewModel = function(){ 
    var self = this; 

    self.anObject = { 
     test: ko.observable("I'm and object bound by WITH.") 
    } 

    var ViewModel2 = function(){ 
     var self = this; 
     self.test = ko.observable("I would like to be bound by WITH"); 
    }; 

    self.aFunction = new ViewModel2(); 

}; 
ko.applyBindings(new viewModel()); 
+1

спасибо! если вы не возражаете, я немного перепробовал вопрос. как это может работать с двумя способами? –

+0

По умолчанию это двусторонняя привязка, если вы привязываете свойство к элементу ввода, такому как текст. –

2
var viewModel = function(){ 
    var self = this; 

    self.anObject = { 
     test: ko.observable("I'm and object bound by WITH.") 
    } 

    self.aFunction =ko.computed(function(){ 
     var self = this; 
     self.test = ko.observable("I would like to be bound by WITH"); 
     return self.test; 
    }) 
}; 
ko.applyBindings(new viewModel()); 

http://jsfiddle.net/ash_bars/qNdUK/1/

1
var viewModel = function(){ 
    var self = this; 

    self.anObject = { 
     test: ko.observable("I'm and object bound by WITH.") 
    } 

    self.aFunction = function(){ 
     var thisfunc = this; 
     thisfunc.test = ko.observable("I would like to be bound by WITH"); 
     return thisfunc; 
    } 

}; 
ko.applyBindings(new viewModel()); 

См http://jsfiddle.net/jaq316/K4EU5/1/

+0

Это замечательно. В чем разница между этим и ниже, используя ko.computed? –

+0

Кроме того, если вы не возражаете, как я могу передать данные? –

+0

Вычисляемые функции также наблюдаемый объект, если он зависит от другого наблюдаемого объекта, и вы изменяете его, наблюдаемая функция изменила его значение. http://stackoverflow.com/questions/16274061/jquery-knockout-ko-computed-vs-classic-function – Ashot