#angular #angular12
Вопрос:
Я хочу классифицировать элементы интерфейса на своей панели мониторинга, поэтому я пытаюсь сделать что-то вроде этого:
export interface MyInterface {
title?: string;
dashboard: any[
{
id: number;
label: string;
key: any
// etc…
};
]
}
Как я могу это сделать?
Ответ №1:
Вот что я бы предложил. Его можно изменить в том смысле, что он указывает «массив типа».
export interface Dashboard{
id: number;
label: string;
key: any;
}
export interface MyInterface {
title?: string;
dashboard: Dashboard[];
}
Комментарии:
1. И как мне его использовать? например: dashboard.id: 1 ?
Ответ №2:
dashboard: {
id: number;
label: string;
key: any
// etc…
}[];
вы ставите тип того, что находится в массиве, перед обозначением массива, обозначая, что это массив этого типа, а не массив any
, что any[]
означает.
Комментарии:
1. Я получаю это, когда пытаюсь использовать / инициализировать его … Элемент неявно имеет тип «any», поскольку выражение типа » any «не может использоваться для индексирования типа» {идентификатор: номер; метка: строка; ключ: строка;}». … Я пытаюсь это… init: MyInterface = { Заголовок: ‘некоторые ‘заголовок, панель мониторинга: { идентификатор: 1, метка: «строка»; ключ: «любой» }[]; };
2. Я не могу читать код в комментариях.