Опция Время дата в качестве отдельной переменной

#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. Это все еще не работает для меня. Интересно, есть ли что-то не так с настройками моего проекта.