2014-12-29 82 views
1

如何將計算傳遞到組件中,以便更改某個組件中選定的值將影響不同組件中的值。如何將can.compute傳遞給can.Component?

http://jsbin.com/feleko/1/edit?html,js,console,output

我正在嘗試設置它,以便選擇在第二的選項的第一選擇的值改變。我認爲監聽dom更改事件應該很簡單,但我似乎沒有得到可以更新的計算,或者有權訪問父範圍以便使用屬性名稱來更新它。同樣,最大值不是接收更新的活動對象。

回答

1

我發現了一個令人反感的方式。 can.mustache提供了一個data幫助器,它將當前上下文放在元素的數據上。

<select {{data 'context'}} value="a"> 

然後在init事件中,我可以捕獲元素的數據,並將其分配到的範圍,因此所有可用的示波器功能。

events: { 
    init: function(el, opt) { 
    opt.scope.context = el.data('context') 
    } 
} 

如果尷尬的話,查找值是可能的。

this.context[this.attr('value')]