小编典典

打字稿类型“字符串”不可分配给类型

all

这是我在fruit.ts中的内容

export type Fruit = "Orange" | "Apple" | "Banana"

现在我在另一个打字稿文件中导入fruit.ts。这就是我所拥有的

myString:string = "Banana";

myFruit:Fruit = myString;

当我做

myFruit = myString;

我收到一个错误:

类型“字符串”不可分配给类型“橙色”| “苹果” | “香蕉”’

如何将字符串分配给自定义类型 Fruit 的变量?


阅读 80

收藏
2022-04-07

共1个答案

小编典典

更新

正如@Simon_Weaver 的回答中提到的,从 TypeScript 3.4 版开始,可以将其断言为const

let fruit = "Banana" as const;

旧答案

你需要投射它

export type Fruit = "Orange" | "Apple" | "Banana";
let myString: string = "Banana";

let myFruit: Fruit = myString as Fruit;

另请注意,在使用字符串文字时,您只需要使用一个|

2022-04-07