#typescript
Вопрос:
В настоящее время у меня немного болит голова, когда я пытаюсь отформатировать время для отображения в веб-компоненте с помощью Typescript /React
Приведенные ниже коды работают нормально:
new Date(myDate) .toLocaleTimeString( 'en-US', { weekday: 'short', year: 'numeric', month: 'short', day: 'numeric', hour12: false });
Однако я пытаюсь повторно использовать этот параметр формата в нескольких местах, поэтому я пытаюсь это сделать, но это не работает:
const timeformat = { weekday: 'short', year: 'numeric', month: 'short', day: 'numeric', hour12: false }; new Date(status.start).toLocaleTimeString('en-US',timeformat);
TypeScript выдает ошибку как таковую:
Argument of type '{ weekday: string; year: string; month: string; day: string; hour12: boolean; }' is not assignable to parameter of type 'DateTimeFormatOptions'. Types of property 'weekday' are incompatible. Type 'string' is not assignable to type '"short" | "long" | "narrow" | undefined'. TS2345
Я пытался
const timeFormat : DateTimeFormatOptions = {...}
Но он не может найти нужный тип.
Пожалуйста, помогите!!
Большое вам спасибо!!
Ответ №1:
Это должно решить вашу проблему:
let timeformat = new Intl.DateTimeFormatOptions('en-US', { weekday: 'short', year: 'numeric', month: 'short', day: 'numeric', hour12: false });
Комментарии:
1. Это все еще не работает для меня. Интересно, есть ли что-то не так с настройками моего проекта.