No sé si está relacionado con el #4216 porque estoy usando Angular 4.4.4
y ese es un problema React
, así que lo publico como un problema separado.
Recibí el siguiente error después de la actualización:
__WEBPACK_IMPORTED_MODULE_2_moment__ is not a function
Estoy usando los siguientes moment
paquetes
"moment": "2.19.0",
"@types/moment": "2.13.0",
El código donde obtengo el error es bastante simple:
import * as moment from 'moment';
...
if (moment().year() !== this.mainData.activeYear)
...
+1 - Mismo problema con Angular 4
Aquí igual. No usar Angular o React. Este es mi error de paquete web:
WARNING in ./~/moment/src/lib/locale/locales.js
Module not found: Error: Can't resolve './locale' in '/data/jenkins/workspace/project/node_modules/moment/src/lib/locale'
./~/moment/src/lib/locale/locales.js 65:16-60
./~/moment/src/lib/locale/locale.js
./~/moment/src/moment.js
./script.js
Mismo problema con vuejs y webpack.
Lo mismo aquí con el paquete web, aunque el problema se desencadena por la zona horaria del momento. Cambiamos la dependencia de "moment": "^2.18.1"
a "moment": "~2.18.1"
mismo problema cuando se actualiza a la versión 2.19.0
WARNING in ./~/[email protected]@moment/src/lib/locale/locales.js
Module not found: Error: Can't resolve './locale' in '/Users/XXX/code/gitlab/web-editor/node_modules/[email protected]@moment/src/lib/locale'
@ ./~/[email protected]@moment/src/lib/locale/locales.js 65:16-60
@ ./~/[email protected]@moment/src/lib/locale/locale.js
@ ./~/[email protected]@moment/src/moment.js
@ ./~/[email protected]@antd/lib/calendar/index.js
@ ./~/[email protected]@antd/lib/index.js
@ dll lib
Mismo problema aquí con 2.19.0
Mismo problema en esta versión 2.19.0
Esta versión (2.19.0 debe ser reparada)
por el 'momento' ahahah, instala la 2.18.1
"momento": "~2.18.1"
Mismo problema aquí 😢 Regresaremos a 2.18 hasta que esto se resuelva.
El mismo problema aqui...
reaccionar error del paquete web
WARNING in ./node_modules/moment/src/lib/locale/locales.js
Module not found: Error: Can't resolve './locale' in 'blahblahblah/node_modules/moment/src/lib/locale'
@ ./node_modules/moment/src/lib/locale/locales.js 65:16-60
@ ./node_modules/moment/src/lib/locale/locale.js
@ ./node_modules/moment/src/moment.js
@ ./src/client/components/ArticlesGrid/index.js
@ ./src/client/containers/StuffPage/index.js
@ ./src/client/routes.jsx
@ ./src/client/index.js
@ multi (webpack)-dev-server/client?http://0.0.0.0:8050 webpack/hot/dev-server babel-polyfill ./src/client/index.js
@mymtw : como comunidad, no permitimos jurar en los formularios, por lo que su comentario se actualizó. Por favor, absténgase en el futuro.
Obtuve este después de actualizar a 2.19...
node_modules/webpack/lib/IgnorePlugin.js:20
(!contextRegExp || contextRegExp.test(result.context))) {
^
TypeError: contextRegExp.test is not a function
Y usando ignorar el complemento para omitir locales en mi archivo de configuración de paquete web:
new webpack.IgnorePlugin(/^\.\/locale$/, [/moment$/])
Bloquear la versión del momento en package.json
ayudará a:
"moment": "2.18.0"
Sin embargo, si sus dependencias extraen la última versión de moment (2.19.0), lo anterior no funcionará (ejecute find ./node_modules/*/node_modules -iname moment
para verificar otras versiones de moment en su aplicación)
En su lugar, puede usar externos de paquetes web:
+ externals: {
+ moment: 'moment',
+ },
<script src="https://momentjs.com/downloads/moment.min.js"></script>
Rebajado a ~2.18.0
que evita esto por el momento.
Aquí hay un paso de reproducción que funciona para mí. Supongo que tiene create-react-app
instalado globalmente:
> create-react-app my-app
> cd my-app
> # Prove the app it working correctly
> npm run start
> npm install moment
Actualice src/app.js
con algo como:
import '.App.css';
+ import moment from 'moment'
class App extends Component {
</p>
+<p>
+ Today is {moment().format()}
+</p>
</div>
Entonces
> npm run start
Espere que se cargue el sitio web.
Real, falla con un error: no se puede resolver el error './locale'.
Contexto adicional, funciona después de hacer
> npm install [email protected]
Esto es interesante. Acabo de actualizar moment en mi propio código en el que trabajo para mi trabajo y comencé webpack. Por lo que puedo decir, tengo la última de todas las dependencias de paquetes web (hay varias y solo he comprobado algunas), y el momento 2.19.0, y todo está bien.
Probaré esta ruta de crear-reaccionar-aplicación a continuación.
¡Esta no fue una mañana muy feliz con este error!
Lo mismo ocurre con este error.
npm install --save [email protected]
Esto soluciona el problema por el momento. 2.19.0 me estaba dando el mismo error hace aproximadamente 2 horas.
Se degradó a la versión 2.18.1 y funcionó bien.
También podemos corroborar este escenario.
2.19.0 rompió nuestra compilación de producción :(. Volver a 2.18.1 parece estar funcionando bien.
Cerrando como un duplicado de #4216 - seguimiento allí.
Comentario más útil
Aquí igual. No usar Angular o React. Este es mi error de paquete web: