Ответ 1
Ваш объект выглядит как словарь Object
массивов
interface Dic {
[key: string]: Object[]
}
У меня есть такой объект, который создается методом подчеркивания _.groupBy()
.
myObject = {
"key" : [{Object},{Object2},{Object3}],
"key2" : [{Object4},{Object5},{Object6}],
...
}
Как я могу определить это как интерфейс с TypeScript?
я не хочу просто определять его как myObject:Object = { ...
, а скорее иметь для него собственный тип.
Ваш объект выглядит как словарь Object
массивов
interface Dic {
[key: string]: Object[]
}
Теперь в TypeScript есть выделенный тип Record
:
const myObject: Record<string, object[]> = { ... }
Кроме того, рассмотрите возможность ввода ключей по возможности:
type MyKey = 'key1' | 'key2' | ...
const myObject: Record<MyKey, object[]> = { ... }
Вы также можете использовать тип:
type Dic = {
[key in string]: Object[]
}