TypeScript:将文字字符串类型定义转换为字符串值(如typeof运算符),反之亦然?

问题描述 投票:1回答:1

我想访问字符串文字类型的字符串值,类似于C#中的typeof运算符,否则我必须定义它两次...

myStringLiteral: 'STRING TYPE';

myString:string = typeof(myStringLiteral); // Want myString = 'STRING TYPE'...

或者,如果可能相反:

const myString:string =  'STRING TYPE';

myStringLiteral: myString;
string typescript types const
1个回答
2
投票

您必须不使用显式类型注释来让编译器推断常量的字符串文字类型(或手动指定字符串文字类型而不是string)。

如果你正确输入了myString常量,你可以使用typeof来获取类型注释中的常量类型或类型定义:

const myString = 'STRING TYPE'; // typed as 'STRING TYPE'

type myStringLiteral = typeof myString; // myStringLiteral is 'STRING TYPE'

let otherVar: typeof myString;
© www.soinside.com 2019 - 2024. All rights reserved.