我刚刚开始使用TypeScript,我想知道如何为这种类型的对象声明一个接口:
const branch = {
'CN': {
'name': 'CN Name',
'branch': 'Chinoise',
'url': 'CN URL'
},
'DE': {
'name': 'DE Name',
'branch': 'Allemande',
'discord': 'DE Discord',
'url': 'DE URL'
},
'EN': {
'name': 'EN Name',
'branch': 'Anglaise',
'url': 'EN URL'
},
[...]
}
如您所见,我有这个界面:
interface Branch {
name: string,
branch: string,
discord?: string,
url: string
}
在上面的代码中重复了几次。 所以我想知道是否可以对TypeScript说:“嘿,Branch对象包含这个重复多次的界面。”
谢谢!
答案 0 :(得分:2)
你可以这样做:
const branch: {[key: string]: Branch} = ...;
这意味着分支变量是一个对象,其键的类型为字符串,值为Branch
;
索引签名的官方文档:https://www.typescriptlang.org/docs/handbook/interfaces.html