Часовой пояс момента в Angular 9
В настоящее время я обновляю свою форму проекта Angular 8
к 9
.
В проекте используется"@types/moment-timezone": "^0.5.30"
в package.json
Теперь этот пакет устарел. https://www.npmjs.com/package/@types/moment-timezone
Когда я запускаю проект ng serve
, появляется это сообщение об ошибке
user.model.ts:3:25 - error TS7016: Could not find a declaration file for module 'moment-timezone'. '/home/bunthai/sftp/upgrade/projectg/ui/ctr/node_modules/moment-timezone/index.js' implicitly has an 'any' type.
Try `npm install @types/moment-timezone` if it exists or add a new declaration (.d.ts) file containing `declare module 'moment-timezone';`
import * as moment from 'moment-timezone';
~~~~~~~~~~~~~~~~~
Как справиться с этой проблемой?
2 ответа
Я нашел решение: /questions/43963494/ne-udalos-najti-fajl-obyavleniya-dlya-modulya-module-name-pathtomodule-namejs-neyavno-imeet-tip-any/43963507#43963507
В моем случае изменение с import * as moment from 'moment-timezone'
к const moment = require('moment-timezone');
Вам необходимо удалить этот импорт и вручную импортировать нужный часовой пояс, например:
import moment from "moment";
import "moment/locale/fr";
moment.locale('fr')
Если вы не импортируете другой часовой пояс, вы получите часовой пояс сервера nodeJS по умолчанию. Если вам нужен другой, вам нужно импортировать его и использовать.
Просто и совет, прекратите использовать эту библиотеку, если можете.