так ошибка какая?
Argument of type '(alert: alert) => void' is not assignable to parameter of type '(value: { date_time: { toString: () => string; toDateString: () => string; toTimeString: () => string; toLocaleString: { (): string; (locales?: string | string[] | undefined, options?: DateTimeFormatOptions | undefined): string; }; ... 39 more ...; getVarDate: () => VarDate; }; type: alertStatus; position: { ...; };...'.<br/>Types of parameters 'alert' and 'value' are incompatible.<br/>Type '{ date_time: { toString: () => string; toDateString: () => string; toTimeString: () => string; toLocaleString: { (): string; (locales?: string | string[] | undefined, options?: DateTimeFormatOptions | undefined): string; }; ... 39 more ...; getVarDate:
тут вместо типа alert очевидно должен быть тип Date
API возвращает {alert:alert[]}, почему Date?
API у вас возвращает getRouteResponse
Приходиться делать костыль типа this.alerts.map((alert)=>{ alert as alert; ... });
type getRouteResponse = { path: trafficElement[], alerts: alert[], events: routeEvent[], leaving_warehouse_date_time: Date, returning_warehouse_date_time: Date | undefined, device_id: string, registration_number: string, }
из интереса - если вы не указываете тип alert'a в методе map, то какой тип вам подсказывает ts?
Похоже на баг вью 3 если честно, он почему-то считает что у вас this.alerts это реф
Если не указывать, то распознаётся тип как alert. Как и долго быть
Тогда зачем его указывать?
Самое интересное что если не использовать тип Data внутри alert то все работает. Проблема связана с этим полем
Обсуждают сегодня