gpt4 book ai didi

Angular 10 升级 : Why use @Directive() instead of @Component() for abstract (component) classes?

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

我最近将我的 Angular 应用程序从 v9 升级到 v10。
我注意到不再支持未修饰的类。见 here
所以在ng upgrade期间我没有装饰的抽象组件已更改为具有 @Directive()装饰器。
例如

export abstract class AbstractFormControl implements ControlValueAccessor { ... }
被改成了
@Directive()
export abstract class AbstractFormControl implements ControlValueAccessor { ... }
为什么 Angular 使用 @Directive .不会 @Component是一个更好的方法,因为类是一个组件而不是一个指令?意图是什么?

最佳答案

组件要求您指定 templatetemplateUrl ,不能与
一个抽象类。
正如评论中提到的 - 组件是一种特殊类型的指令。所以从抽象指令继承是可以的。

关于Angular 10 升级 : Why use @Directive() instead of @Component() for abstract (component) classes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63687088/

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