Typescript 设置状态';包含枚举值的s接口引发错误

Typescript 设置状态';包含枚举值的s接口引发错误,typescript,Typescript,正在尝试运行以下命令: type Mode='signup'|'sign'|'忘记密码'; 接口IProps{} 界面状态{ 模式:模式; } 类SigningUpModal扩展React.Component{ 状态={ 模式:“注册”, }; } 引发以下错误: Type 'string' is not assignable to type 'Mode'. ts(2416) 为什么呢 例如,这非常好: type Mode='signup'|'sign'|'忘记密码'; let mode:m

正在尝试运行以下命令:

type Mode='signup'|'sign'|'忘记密码';
接口IProps{}
界面状态{
模式:模式;
}
类SigningUpModal扩展React.Component{
状态={
模式:“注册”,
};
}
引发以下错误:

Type 'string' is not assignable to type 'Mode'. ts(2416)
为什么呢

例如,这非常好:

type Mode='signup'|'sign'|'忘记密码';
let mode:mode='signup';
还有,这很好:

类标志gnupmodal扩展React.Component{
构造(){
此.state={
模式:“注册”,
};
}
}

我想您必须将
字符串
显式转换为
模式
类型:

this.state = {
  mode: 'signup' as Mode,
};

this.state={
模式:“注册”,
};
有关更多信息,请滚动至“类型断言”:

    this.state = {
      mode: <Mode>'signup',
    };