у нее есть много items, которые делают leftJoin.
И вот проблема нужно написать проверку на items, чтобы свойство items в order было не undefined и это был наполненный массив.
Вопрос, можно как-нибудь обойтись без создания IOrderWithItems, который наследуется от IOrder, чтобы перегрузить опциональное свойство?
interface IOrder {
prop1: string;
prop2: string;
items?: object[];
}
interface IOrderWithItems extends IOrder {
items: object[];
}
class Order {
public prop1: string;
public prop2: string;
public items?: { type: string} [];
}
class OrderSpec {
public hasItems(order: Order): order is IOrderWithItems {
return order.items !== undefined && order.items.length > 0;
}
}
const order: Order = {
prop1: '',
prop2: '',
};
if (!orderSpec.hasItems(order)) {
return;
}
order.items[0].type = ' <---- здесь ошибки в компиляции не будет';
cделать дженерик? https://bit.ly/37gGAQP
Omit + &
Обсуждают сегодня