打字稿将类型声明为 属性 of class
typescript declare type as a property of class
class Icons{
static home = "<svg...";
static back = "ico/back.png";
}
class Menu{
addItem(icon: ????){....}
}
您会在 Menu.addItem 的图标参数中声明什么类型以强制它成为 class 图标的成员?
到目前为止
addItem(icon:[keyof typeof Icons]);
menu.addItem("home", someFn);
使用 属性 名称作为字符串进行近似和验证,但是,是否可以将其声明为一种类型,让我表达对图标 属性 的直接引用
menu.addItem(Icons.home, someFn);
我怀疑我在这里遗漏了一些非常基本的东西
使用字符串枚举:
enum Icons {
home = "<svg...",
back = "ico/back.png"
}
function addItem(icon: Icons) {
console.log(icon);
}
addItem(Icons.home);
class Icons{
static home = "<svg...";
static back = "ico/back.png";
}
class Menu{
addItem(icon: ????){....}
}
您会在 Menu.addItem 的图标参数中声明什么类型以强制它成为 class 图标的成员?
到目前为止
addItem(icon:[keyof typeof Icons]);
menu.addItem("home", someFn);
使用 属性 名称作为字符串进行近似和验证,但是,是否可以将其声明为一种类型,让我表达对图标 属性 的直接引用
menu.addItem(Icons.home, someFn);
我怀疑我在这里遗漏了一些非常基本的东西
使用字符串枚举:
enum Icons {
home = "<svg...",
back = "ico/back.png"
}
function addItem(icon: Icons) {
console.log(icon);
}
addItem(Icons.home);