Vue3 | TypeScript. Как задать тип для props, если на входе массив объектов?
Есть массив объектов, который будет воходящим параметром в vue-компоненте:
const items = reactive([
{ type: 'Java Script', is_main: true },
{ type: 'Python', is_main: false },
{ type: 'Go', is_main: false },
{ type: 'PHP', is_main: false },
]);
Внутри компонета:
const props = defineProps<Props>();
interface Props {
items: string[]; <--
}
При монтировании я хочу найти объект с определенным условием:
Но TS судя по-всему string[] воспринимает буквально как набор строк, а не объектов:
any
Property 'is_main' does not exist on type 'string'.ts(2339)
Как правильно задать тип для props, если на входе массив объектов?
Ответы (1 шт):
Автор решения: smellyshovel
→ Ссылка
Так и задайте:
interface Props {
items: {
type: string;
is_main: boolean;
}[];
}
defineProps<Props>()
