gpt4 book ai didi

dart - 使用@NgComponent map : const {} vs. 类注解

转载 作者:行者123 更新时间:2023-12-04 18:42:45 25 4
gpt4 key购买 nike

我看到一些 Angular dart 示例使用这种形式指定属性绑定(bind):

@NgComponent(
selector: 'foobar',
publishAs: 'foo',
map : const { "label" : "@label"}
)

而其他人注释单个字段:

class FooBar {
@NgOneWayOneTime("label")
String label;
}

我是否有理由要使用一种形式而不是另一种形式?

还有一个问题:我可以混合和匹配这两种形式吗?

假设我有一个基类:

MyBase {
@NgOneWay("label")
String label;
}

我可以从该基类继承,并让 Angular 获取注释吗?

最佳答案

我相信建议您使用注释,因为它们更具可读性。

当您可能想要使用旧式映射时,有一些用例,例如,为多个组件/指令/ Controller 重用该类:

@NgComponent(selector: 'foo', map: const {'attr-a': '=>attrA'})
@NgComponent(selector: 'bar', map: const {'attr-a': '=>!attrA'})
class FooBarComponent {
String attrA;
}

如您所见,您可以定义不同的映射但使用相同的类。从理论上讲,这应该很少需要,但如果需要,它是可用的。

目前两种形式都不支持继承。请 file a feature request如果你对此有强烈的感觉。

关于dart - 使用@NgComponent map : const {} vs. 类注解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21370036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com