【发布时间】:2016-01-12 23:03:19
【问题描述】:
我正在尝试在 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)
【问题讨论】:
标签: javascript angularjs angularjs-directive