我正在嘗試在angular 1.5中使用新的.component()方法。目前我已經找到關於如何使用它的信息。角度文檔不提及它。
我想將作用域或對象從作用域傳遞給要在組件的模板部分中使用的.component,但只能傳遞兩個參數是$ element和$ attrs。我試圖通過html中的屬性傳遞對象,但我得到的只是對象名稱的字符串。
我試圖將其設定爲在這些方面
my-attr="item.myVal"
my-attr="{item.myVal}"
my-attr="{{item.myVal}}"
每次我仍然得到字符串常量,而不是變量的值被表示爲一個變量。我怎樣才能將它設置爲一個變量?
我試圖通過新的綁定捕獲數據:{}但是我的模板:{}沒有訪問變量。
這裏是我的部分,因爲它現在是:
export var ItemListAction = {
controller: 'PanelCtrl as itemCtrl',
isolate: false,
template: ($element: any, $attrs: any): any=> {
var myVal: any = $attrs.myAttr; // returns "item.myVal"
var listAction: string = compileListAction();
return listAction;
}
};
這是我在HTML組件
<panel-item-list-action my-attr="item.myVal"></panel-item-list-action>
這是該組件的角模塊聲明:angular.module('Panel', []).component('panelItemListAction', ItemListAction)
感謝您的答覆,有沒有什麼辦法來訪問的範圍,對象或變量i在模板旁邊:{}屬性?博客沒有提到這個 – appthat
模板不需要$ scope。模板函數返回HTML。您可以像往常一樣在控制器中注入$ scope。 – georgeawg
等隔離範圍之外,.component()與ng-include類似嗎? – appthat