Опишите ошибку
Если я пытаюсь скомпилировать приложение TypeScript с помощью webpack, я получаю сообщение об ошибке для каждой локали, которую невозможно разрешить "../moment".
Эта ошибка повторяется для всех остальных языков:
ERROR in ./node_modules/moment/locale/km.js
Module not found: Error: Can't resolve '../moment' in 'C:\PROGS\dev\var\private\moment-test\node_modules\moment\locale'
@ ./node_modules/moment/locale/km.js 5:50-70
@ ./node_modules/moment/locale sync ^\.\/.*$
@ ./node_modules/moment/moment.js
@ ./src/app.ts
Воспроизводить
src / app.ts
import * as moment from "moment";
console.log(moment().format("YYYY"));
package.json
{
"private": true,
"dependencies": {
"moment": "2.23.0"
},
"devDependencies": {
"awesome-typescript-loader": "5.2.1",
"typescript": "3.2.2",
"webpack": "4.28.3",
"webpack-cli": "3.2.1"
}
}
tsconfig.json
{ "include": [ "./src/" ] }
webpack.config.js
module.exports = {
entry: "./src/app.ts",
output: { filename: "bundle.js" },
resolve: { extensions: [".ts"] },
module: { rules: [ { test: /\.ts$/, use: { loader: "awesome-typescript-loader" } } ] }
}
Ожидаемое поведение
yarn run webpack -p
должен работать без ошибок.
Среда, специфичная для момента
Пожалуйста, запустите следующий код в своей среде и включите вывод:
console.log((new Date()).toString())
console.log((new Date()).toLocaleString())
console.log((new Date()).getTimezoneOffset())
console.log(navigator.userAgent)
console.log(moment.version)
Этот код не работает с теми же ошибками!
Спасибо, что открыли этот запрос.
Это отличный вопрос для Stack Overflow .
Это же ошибка? Stack Overflow хорош для вопросов, но там ошибки исправлять никто не будет.
Я интерпретирую ваш ответ как означающий, что вы не поддерживаете WebPack с TypeScript. Очень жаль!
В Интернете есть различные руководства по использованию Moment с Webpack и TypeScript. Кажется, что многие другие прекрасно используют их вместе. Если эта проблема возникает у большего числа людей и у сообщества достаточно знаний, чтобы ее исправить, мы можем попытаться это сделать.
Между прочим, у меня была такая же проблема - похоже, из-за локалей моментов, которые меня не волновали. В этой онлайн-статье я нашел решение, которое в моем случае было достаточно хорошим, чтобы игнорировать плагин locales:
плагины: [новый webpack.IgnorePlugin (/^.\/ locale $ /, / moment $ /)]
Это кажется довольно распространенным сценарием использования, поэтому я бы рекомендовал сделать ссылку на раздела документации о
@ authguidance-examples PR приветствуются на https://github.com/moment/momentjs.com !
Я столкнулся с той же проблемой, вот в чем проблема -
npm i --save react-moment
, которая только что была добавлена в файл package.json
но библиотеки не было в node_modules, поэтому для этого я выполняюnpm install --save moment react-moment
кто-нибудь знает, почему всегда отображается как «несколько секунд назад»? какая бы ни была дата
я добавил момент в reactjs: import * as moment from "moment"; и в инъекции зависимости добавлено: "moment": "2.23.0", но получив
неопределенная ошибка ... в reactjs,
Пожалуйста, помогите ...
Почему эта ветка не закрыта? Последний комментарий 2 декабря 2019 г. @marwahaha
Самый полезный комментарий
Я столкнулся с той же проблемой, вот в чем проблема -
npm i --save react-moment
, которая только что была добавлена в файлpackage.json
но библиотеки не было в node_modules, поэтому для этого я выполняюnpm install --save moment react-moment