Javascript 如何在typescript中创建带有前缀/后缀词的字符串类型?

Javascript 如何在typescript中创建带有前缀/后缀词的字符串类型?,javascript,typescript,Javascript,Typescript,我有这样一种类型: type State = 'state1' | 'state2' | 'state3'; 现在我想定义另一种类型DefaultState,就像下面的代码一样,但不想手动编写“state[X]”。它应该使用字符串-default自动映射所有可能的状态:- type DefaultState = 'state1-default' | 'state2-default' | 'state3-default'; type AllState = State | DefaultState

我有这样一种类型:

type State = 'state1' | 'state2' | 'state3';
现在我想定义另一种类型DefaultState,就像下面的代码一样,但不想手动编写“state[X]”。它应该使用字符串
-default
自动映射所有可能的状态:-

type DefaultState = 'state1-default' | 'state2-default' | 'state3-default';
type AllState = State | DefaultState;

const s1: AllState = 'state1';
const s2: AllState = 'state2';
const s3: AllState = 'state1-default';

// All these values for s1, s2, s3 should be valid.

我们在typescript v4.0.0-beta版或任何版本中是否有相关内容?

也就是说,如果您在构建过程中使用MSBuild,您可以使用T4来生成重复代码。还有一些建议/问题有待解决。一旦解决了这个问题,应该能够轻松实现。@DeepakDixit我删除了我的建议,因为我发现tsc不支持它。也就是说,只要在构建过程中使用MSBuild,您就可以使用T4生成重复代码。还有建议/问题有待解决。一旦这个问题得到解决,应该能够轻松实现。@DeepakDixit我删除了我的建议,因为我发现tsc不支持我的建议。