我需要一些关于打字稿中的接口的帮助
我有3个界面:
export interface HomeMenu {
[name: string]: MenuItem;
}
export interface MenuItem {
title: string;
route: string;
homeMenu?: HomeMenu;
}
export interface Menu {
homeMenu: HomeMenu;
}
现在我这样做:
var json: Menu = {
"homeMenu": {
"aname1": {
"title": "text",
"route": "myroute"
},
"aname2": {
"title": "text",
"route": "myroute",
"homeMenu": {
"aname21": {
"title": "text",
"route": "myroute"
},
"aname22": {
"title": "text",
"route": "myroute"
}
}
},
"aname3": {
"title": "text",
"route": "myroute"
}
}
}
json.homeMenu["aname2"].title = "myTitle";
但是现在我怎么能在HomeMenu中推出一个新项目?我试图用Array扩展HomeMenu接口,但我有关于索引签名的错误,Array想要一个索引(名称)而不是字符串的数字
我检查了Typescript,一些帖子,我还没有找到答案
或者也许是另一个在homeMenu对象上有推送功能的解决方案?
如果有人可以帮助我
提前致谢
答案 0 :(得分:0)
怎么样:
json.homeMenu["aname4"] = {
title: "title 4",
route: "route4"
};