Javascript 在类中声明对象类型
我应该创建一个json格式的js类Javascript 在类中声明对象类型,javascript,typescript,class,object,ecmascript-6,Javascript,Typescript,Class,Object,Ecmascript 6,我应该创建一个json格式的js类 { "rows": [{ "value": { "comments": ${dInfo.description}, "Tags": [], "metadataList": { "names": [], "metadata": {} }, }] } 我想知道如何声明元数据 事实上,我是这样宣布的 export class Value {
{
"rows": [{
"value": {
"comments": ${dInfo.description},
"Tags": [],
"metadataList": {
"names": [],
"metadata": {}
},
}]
}
我想知道如何声明元数据
事实上,我是这样宣布的
export class Value {
comments: string;
Tags:string[];
metadataList:{
name:string[],
metadata: Object
}
}
这里的metadataList
没有被键入,我认为这不是一个最佳实践。
我如何使用它的类型声明元数据列表?如果元数据是键/值存储,则可以通过收紧值类型,使类型比
对象
或{}
稍微窄一点:
class Value {
comments: string;
Tags:string[];
metadataList:{
name:string[],
metadata: { [key: string]: string }
}
}
const val = new Value();
val.metadataList = {
name: ['Example'],
metadata: {
key: 'value',
key2: 'value'
}
};
如果您有更多关于元数据的信息,我可以将其缩小。您为什么这样认为?对象是类型化的。我不确定,但当我尝试
metadataList:Object{..}
时,它不起作用,只是{}
使其类型化?提供一个示例或Fenton答案应该会有所帮助。既然你已经必须想出类值{…}
是什么阻碍了你实现自己的类metadataList{…}
也是吗?您有一些示例数据吗?i、 e.metadatalist中会有什么-特别是与我的示例不同的地方?我是否应该指定metadatalist类型对象{..}
,而不仅仅是{..}
?