我在 Typescript 中有以下代码。为什么编译器会抛出错误?
var object = {};
Object.defineProperty(object, 'first', {
value: 37,
writable: false,
enumerable: true,
configurable: true
});
console.log('first property: ' + object.first);
js.ts(14,42):错误 TS2339:属性“first”在类型“{}”上不存在。
它与 mozilla 文档(示例部分)中的代码片段相同。
原文由 user2685879 发布,翻译遵循 CC BY-SA 4.0 许可协议
另一种方法是做接口,这样编译器就会知道属性存在。
看看这个问题 How to customize properties in TypeScript