属性'bordered'在类型 'Object' 上不存在



相关TypeScript代码:

import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-ng-class-example',
templateUrl: './ng-class-example.component.html'
})
export class NgClassExampleComponent implements OnInit {
isBordered: boolean;
classesObj: Object;
classList: string[];
constructor() { } 
ngOnInit(): void { 
this.isBordered = true;
this.classList = ['blue', 'round']
this.toggleBorder();
}
toggleBorder(): void {
this.isBordered = !this.isBordered;
this.classesObj = {
bordered: this.isBordered
};
}
}

对应模板(相关部分)。

<div [ngClass]="classesObj">
Using object var. Border {{ classesObj.bordered ? "ON" : "OFF" }}
</div>

现在我得到一个错误在我的。html文件(周围的属性。borders)指出:"属性'border '不存在类型'Object'"

我是新的TypeScript(也是JavaScript),但在我看来,"边界"是在对象上定义的,所以发生了什么?

提前感谢!

你不能在TypeScript中只使用classesObj: Object,因为它被认为是空对象{}。您需要使用any,如

classesObj: any;

或者如果你想要更具体的

classesObj: {
bordered: boolean
};

最新更新