【问题标题】:Angular getter in template expression using dynamic variable使用动态变量的模板表达式中的角度吸气剂
【发布时间】:2019-03-12 14:45:05
【问题描述】:

假设我有一个 Angular (6+) 组件,如下所示:

@Component({
    selector: 'my-component',
    template: '{{test}}'
})
export class MyComponent {
    test = 'myData';

    constructor() {}

    get myData(): string {
        return 'this is what I want so see in the template';
    }
}

这是我要实现的目标的一个非常简单的视图,但基本上,如果我的模板是 {{myData}},我会看到我的 getter 函数被调用并输出预期的字符串。但是,如果要调用的 getter 函数名称保存在组件中的另一个变量中(想象在我的现实世界场景中,我有一个数组),有没有办法告诉 Angular 调用名称被保存的相应 getter上面的变量测试?

【问题讨论】:

    标签: angular typescript


    【解决方案1】:

    看来{{this[test]}} 正在工作。

    【讨论】:

    • 很好的问题和答案。似乎您一直都知道答案,但很高兴知道这种事情有效。
    • 我正在考虑删除答案,但实际上,它是在我发布尝试后几分钟才想到的。不是想炫耀什么的,但我认为这可能对其他人有帮助。
    • 这真的更像是一个评论,我会说把答案充实一点或者删除它并添加评论
    • 我会留给版主来决定。无论哪种方式,我认为很高兴知道您可以在 Angular 模板中使用 this,而通常情况下您不会这样做。
    • 我的问题是为什么 [test] 或 ['myData'] 有效? this[] 与 getter 有什么关系?任何可以阅读的来源将不胜感激。
    猜你喜欢
    • 2018-10-13
    • 2019-11-26
    • 2021-10-19
    • 2023-02-02
    • 1970-01-01
    • 2020-09-21
    • 1970-01-01
    • 2018-11-16
    • 2017-10-11
    相关资源
    最近更新 更多