【发布时间】:2021-01-15 01:31:01
【问题描述】:
我有以下打字稿枚举:
export enum Textures {
earth = "Earth",
colors = "Colors",
disturb = "Disturb",
...,
many = "More"
}
此外,我还有一个 GUI,可以在其中设置要显示的初始纹理:
export class DefaultSettings {
texture: Textures = Textures.earth;
//more Settings
}
let settings = new DefaultSettings();
因此,当我更改 GUI 中的值时,选择“颜色”我不想为枚举中的每个条目编写回调。例如:
if(selcted.value == "Colors"){
settings.texture = Textures.colors;
}
if(selcted.value == "Disturb"){
settings.texture = Textures.disturb;
}
if(selcted.value == "Earth"){
settings.texture = Textures.earth;
}
...
if(selcted.value == "More"){
settings.texture = Textures.many;
}
如何将Texture Enum object 设置为settings.texture 属性?例如:
settings.texture = Textures.X // This saves the string, but I want the object itself
或
settings.texture = Textures[X] // wrong since it puts 'string' instead of 'Textures'
感谢您的帮助!
【问题讨论】:
标签: typescript enums