我試圖讓我的頭部圍繞Angular 1組件。我寫了一個簡單的組件,它會在init中設置一個背景顏色,然後用按鈕單擊來改變顏色。訪問其控制器的角度組件
下面的代碼:
<shadow colour="black"></shadow>
app.component('shadow', {
bindings: {
colour: '='
},
controller: function() {
function setColour(col) {
this.colour = col;
}
},
scope: {},
template: ['<div ',
'style="background: {{ shadow.colour }}; width: 100px; height: 100px;">',
'<button ng-click="shadow.setColour(red)">Button</button>',
'</div>'].join('')
});
不幸的是,這是行不通的。根據我讀過的內容,當沒有傳遞controllerAs
時,Angular會認爲組件名稱是控制器名稱。所以我嘗試着這樣寫。我哪裏做錯了?
我試圖用'NG點擊=」 $ ctrl.setColour('black')「'但它也不起作用。 –
檢查編輯請 – Prashant
您的代碼也不起作用。 我試着在我的控制器裏設置'this.setColour = setColour;',沒有幫助。 –