Angular10:如何为类添加显式的Angular装饰器

问题描述

我正在将Angular应用程序升级到angular10,但是在构建代码时遇到了错误

error NG2007: Class is using Angular features but is not decorated. Please add an explicit Angular decorator.

实用程序类:

export abstract class EntityTest {
    jsonData;
    emService: EMService;
    ValueChangedFields: any = {};
    AuditUnsubscribe: Subject<any>;
    ...
    ...
    abstract initializeEntityHandler();
}

export class EntityCommonUtil extends EntityTest {
    takeUntilDestroyObservables = new Subject();
    ...
    ...
}

export class EMAdmin extends EntityCommonUtil implements OnDestroy {
    @Output() changeName = new EventEmitter();
    constructor(public myForm: FormGroup,public formBuilder: FormBuilder) {
        super();
    }
    ...
    ...
}

在组件中使用:

EMAdmin
constructor(){
    this.EMAdmin = new EMAdmin(...);
}

如何解决以上错误?

谢谢。

解决方法

在原类上添加如下装饰器即可:

import {Component, Directive} from '@angular/core';
@Directive()
export class BaseEntity{}

@Component({selector: 'aaaa', template:''})
export class BaseEntity{}

感谢网友:至纯至善 提供的解答。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...