接口中的计算属性名称必须引用类型为文字类型或“唯一符号”类型的表达式

use*_*867 7 node.js typescript typescript-typings

我有以下类型定义

[符号(级别)]?:字符串;

我试过了

从 winston 导入 level 并将类型更改为 string|symbol 但它没有解决问题。

它一直给我以下错误“接口中的计算属性名称必须引用类型为文字类型或'唯一符号'类型的表达式。”

任何线索?任何指针都有帮助

Sam*_*mHH 9

您的符号level需要定义为 a unique symbol,如下所示:

const level: unique symbol = Symbol();
Run Code Online (Sandbox Code Playgroud)

然后像这样修改你的界面:

interface MyInterface {
    [level]?: string;
}
Run Code Online (Sandbox Code Playgroud)