访问在 AngularJS 组件的标签中声明的属性



我想声明一个属性并在组件的 HTML 标记中为其赋值,如下所示:

<my-component my-attr="foo"></my-component>

然后我想从我的控制器内部获取此属性的值(my-attr(。

使用AngularJS 1.6和TypeScript是否可以做到这一点,如果是,如何?

定义组件时,将myAttr声明为组件的绑定。这样,它的值将成为控制器的一部分。

属性应在bindings中声明:

app.component('myComponent', {
  ...
  bindings: {
    myAttr: '@'
  }
});

(绑定类型:在 AngularJS 中指令作用域中的"@"和"="有什么区别?

属性的名称规范化为 camelCase,该值将在控制器实例上设置为属性。因此,您可能希望在控制器类型上相应地声明它:

class MyComponentController
{
    myAttr: string;
    logAttribute()
    {
        console.log(this.myAttr);
    }
}

相关内容

  • 没有找到相关文章

最新更新