我有一个共享服务文件,它定义了一个变量,如下所示:
export class SharedService {
activeModal: String;
}然后我有一个组件文件,它导入服务并定义它:
constructor(public sharedService: SharedService) {
}在组件模板文件中,我检查了mode值:
<div *ngIf="sharedService.activeModal === 'login'"></div>一切正常,但在编辑器中,sharedService.activeModal === 'login‘部分get的下方有一条红色曲折线条,将鼠标悬停在其上会显示以下代码错误:
[Angular] Expected the operants to be of similar type or any
property sharedService of ModalComponent你知道我做错了什么吗?
发布于 2018-08-09 04:18:50
尝试在activeModal的声明中使用小写的string (原语,而不是包装器对象类型String)。
发布于 2019-09-04 18:20:52
对于那些有相同错误但解决方案不适用于您的人,请确保您没有将枚举与字符串进行比较,如果是这样,请为您的类创建一个成员,并将枚举分配给它,这样您将拥有:
class LalaComponent {
someEnum = SomeEnum;
randomValue: SomeEnum;
}和html格式
<ng-container *ngIf="randomValue === someEnum.option1" >
</ng-container>发布于 2019-02-12 01:18:24
如果要添加额外的类型,可以将设置为移除任何将来的错误
activeModal: any https://stackoverflow.com/questions/51736051
复制相似问题