我发现写长版本过于冗长,即使我在函数定义的参数名称下加下划线时也是如此。
所以我想转类似这样的有效内容:
const myObj: {
myProp: ((_: (_:string) => void) => void)[]
} = {
myProp: []
};
放到更短的地方,我不会两次写道具名称,像这样:
const myObj = {
myProp<(:((:string) => void) => void)[]>: []
};
TS允许的任何语法
答案 0 :(得分:1)
您可以使用类型断言为空数组提供更具体的类型(尽管我不建议将这种类型用于非空数组,因为断言可能允许分配与该类型不完全匹配的项) :
const myObj = {
myProp: [] as Array<(_: (_:string) => void) => void>
};
我还更改为使用Array<>
,因为它对于复杂的项目类型更易读。