Issue
Here's what I have in fruit.ts
export type Fruit = "Orange" | "Apple" | "Banana"
Now I'm importing fruit.ts in another typescript file. Here's what I have
myString:string = "Banana";
myFruit:Fruit = myString;
When I do
myFruit = myString;
I get an error:
Type 'string' is not assignable to type '"Orange" | "Apple" | "Banana"'
How can I assign a string to a variable of custom type Fruit?
Solution
Update
As mentioned in @Simon_Weaver's answer, since TypeScript version 3.4 it's possible to assert it to const:
let fruit = "Banana" as const;
Old answer
You'll need to cast it:
export type Fruit = "Orange" | "Apple" | "Banana";
let myString: string = "Banana";
let myFruit: Fruit = myString as Fruit;
Also notice that when using string literals you need to use only one |
Answered By - Nitzan Tomer
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.