2015-07-01 112 views
-1

我正在Knockout第一次工作,我正在努力與觀察。我已經在一個視圖模型中聲明瞭它,並且我需要獲得另一個視圖中的值。有關如何解決這個問題的任何提示?KnockoutJS Observable

+1

你有你的任何示例代碼可以顯示? –

+0

一般來說,只需'firstModel.someObservable()'(假設你的第二個viewmodel知道第一個viewmodel),但沒有更多的上下文,很難提供建議。 –

回答

0

,你所要做的構造,它的繼承parentViewModel

function parentViewModel() { 
    // Just a best practice potato here :P 
    var self = this; 

    // Initialize the childViewModel change it's 'this' 
    childViewModel.call(self); 

    self.observable = ko.observable(); 
} 

function childViewModel() { 
    var self = this; 

    console.log(self); // It will output the parentViewModel scope 
} 
+0

這有幫助,謝謝! – cbm64

0

首先在共享範圍內聲明您的第一個模型,然後在第二個模型中聲明您的第一個模型。如果您在第二個模型中執行類似myfirstmodel.myobservable()的操作,則應該看到它並與其交互。

var myModel = whatever(); 
var mySndModel = whateverElse(); 

ko.applyBindings(myModel, document.getElementById('whatever')) 
ko.applyBindings(mySndModel, document.getElementById('whateverElse')) 

whateverElse是你的第二個模型,在其中您可以撥打myModel.myObservable()

相關問題