Closed rapiz1 closed 4 years ago
我也是,昨天前天搭建Demo的时候还正常,今天重新clone后,跑不起来了
https://github.com/moment/moment/issues/5472
https://github.com/moment/moment/issues/5481
看起来是moment
最近升级的问题
Workaround:
降级moment
yarn add moment@2.24.0
一样 我今天clone新项目后 也起不来 命令行报这些警告 WARNING Compiled with 2 warnings 11:21:23
warning in ./node_modules/@ant-design/pro-table/node_modules/moment/src/lib/locale/locales.js
Critical dependency: the request of a dependency is an expression
warning in ./node_modules/rc-picker/node_modules/moment/src/lib/locale/locales.js
Critical dependency: the request of a dependency is an expression
moment/moment#5472 moment/moment#5481 看起来是
moment
最近升级的问题Workaround: 降级
moment
yarn add moment@2.24.0
我试了 没用啊
我试了 没用啊
你是不是修改版本号之后没有重新安装包 @ChenWeihua123
moment/moment#5472 moment/moment#5481 看起来是
moment
最近升级的问题 Workaround: 降级moment
yarn add moment@2.24.0
我试了 没用啊
先把旧版本卸载,再重新安装,我这边是没问题的了
@QBH-insist yarn remove moment 然后 yarn add moment@2.24.0 yarn start 我哪里操作不对吗
@QBH-insist yarn remove moment 然后 yarn add moment@2.24.0 yarn start 我哪里操作不对吗
操作是没问题,建议重新clone,再重新执行这2个步骤
@Rapiz1 我重新安装了依赖包了 怎么回事呢 头痛
@QBH-insist yarn remove moment 然后 yarn add moment@2.24.0 yarn start 我哪里操作不对吗
操作是没问题,建议重新clone,再重新执行这2个步骤
好的 谢谢 我试试
自动化构建工具jenkins 用这个方法没用。
Today: → antd@3.26.16 › moment@^2.24.0(2.25.0) (09:27:04) → umi@2.13.13 › umi-ui@1.5.6 › react-dev-utils@9.0.1 › browserslist@4.5.4 › electron-to-chromium@^1.3.122(1.3.426) (12:02:41) → @ant-design/pro-cli@1.0.20 › @umijs/fabric@2.0.8 › eslint-plugin-compat@3.5.1 › mdn-browser-compat-data@^1.0.3(1.0.19) (02:15:51)
antd@3.26.16 会默认装最新版 moment。
测试降级至@2.24.0可以解决问题
我在本地重新安装依赖后,本地也不能运行项目了。 antd 会自己装moment,而不是我装的那个。 而antd自己装的时候会找最新的版本。
antd 版本 3.26.16
npm uninstall moment npm install moment@2.24.0 npm start
success!
npm uninstall moment npm install moment@2.24.0 npm start
success!
This only solves the main app. How do you override moment installed for others?
As you can see below, the main app is 2.24.0. But others are still using 2.25.
$ yarn why moment
yarn why v1.22.4
[1/4] Why do we have the module "moment"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
=> Found "moment@2.24.0"
info Has been hoisted to "moment"
info This module exists because it's specified in "dependencies".
info Disk size without dependencies: "3.48MB"
info Disk size with unique dependencies: "3.48MB"
info Disk size with transitive dependencies: "3.48MB"
info Number of shared dependencies: 0
=> Found "@ant-design/pro-table#moment@2.25.0"
info This module exists because "@ant-design#pro-table" depends on it.
info Disk size without dependencies: "4.17MB"
info Disk size with unique dependencies: "4.17MB"
info Disk size with transitive dependencies: "4.17MB"
info Number of shared dependencies: 0
=> Found "antd#moment@2.25.0"
info This module exists because "antd" depends on it.
info Disk size without dependencies: "4.17MB"
info Disk size with unique dependencies: "4.17MB"
info Disk size with transitive dependencies: "4.17MB"
info Number of shared dependencies: 0
=> Found "@umijs/plugin-locale#moment@2.25.0"
info This module exists because "@umijs#preset-react#@umijs#plugin-locale" depends on it.
info Disk size without dependencies: "4.17MB"
info Disk size with unique dependencies: "4.17MB"
info Disk size with transitive dependencies: "4.17MB"
info Number of shared dependencies: 0
=> Found "rc-picker#moment@2.25.0"
info This module exists because "antd#rc-picker" depends on it.
info Disk size without dependencies: "4.17MB"
info Disk size with unique dependencies: "4.17MB"
info Disk size with transitive dependencies: "4.17MB"
info Number of shared dependencies: 0
Done in 1.06s.
npm uninstall moment npm install moment@2.24.0 npm start success!
This only solves the main app. How do you override moment installed for others?
As you can see below, the main app is 2.24.0. But others are still using 2.25.
$ yarn why moment yarn why v1.22.4 [1/4] Why do we have the module "moment"...? [2/4] Initialising dependency graph... [3/4] Finding dependency... [4/4] Calculating file sizes... => Found "moment@2.24.0" info Has been hoisted to "moment" info This module exists because it's specified in "dependencies". info Disk size without dependencies: "3.48MB" info Disk size with unique dependencies: "3.48MB" info Disk size with transitive dependencies: "3.48MB" info Number of shared dependencies: 0 => Found "@ant-design/pro-table#moment@2.25.0" info This module exists because "@ant-design#pro-table" depends on it. info Disk size without dependencies: "4.17MB" info Disk size with unique dependencies: "4.17MB" info Disk size with transitive dependencies: "4.17MB" info Number of shared dependencies: 0 => Found "antd#moment@2.25.0" info This module exists because "antd" depends on it. info Disk size without dependencies: "4.17MB" info Disk size with unique dependencies: "4.17MB" info Disk size with transitive dependencies: "4.17MB" info Number of shared dependencies: 0 => Found "@umijs/plugin-locale#moment@2.25.0" info This module exists because "@umijs#preset-react#@umijs#plugin-locale" depends on it. info Disk size without dependencies: "4.17MB" info Disk size with unique dependencies: "4.17MB" info Disk size with transitive dependencies: "4.17MB" info Number of shared dependencies: 0 => Found "rc-picker#moment@2.25.0" info This module exists because "antd#rc-picker" depends on it. info Disk size without dependencies: "4.17MB" info Disk size with unique dependencies: "4.17MB" info Disk size with transitive dependencies: "4.17MB" info Number of shared dependencies: 0 Done in 1.06s.
yeah. i also have the problem.
https://github.com/moment/moment/issues/5486#issuecomment-622266107
如果用的是yarn,在package.json里添加这样一句, "resolutions": { "moment": "2.24.0" } 一开始没生效,我把dependencies里的moment固定成了2.24.0 再跑一遍yarn就好了,可以解决问题
the yarn setting can resolve the problem. https://github.com/yarnpkg/rfcs/blob/master/implemented/0000-selective-versions-resolutions.md
the package.json dependencies also need set the 2.24.0 version.
"dependencies": { "@ant-design/colors": "^3.1.0", "@ant-design/pro-layout": "^4.5.16", "@antv/data-set": "^0.10.2", "antd": "^3.23.6", "classnames": "^2.2.6", "dva": "^2.4.1", "echarts": "^4.7.0", "echarts-for-react": "^2.0.15-beta.1", "html2canvas": "^1.0.0-rc.5", "jquery": "^3.5.0", "lodash": "^4.17.11", "moment": "2.24.0", "omit.js": "^1.0.2", "path-to-regexp": "^3.1.0", "qs": "^6.9.0", "react": "^16.8.6", "react-copy-to-clipboard": "^5.0.1", "react-dom": "^16.8.6", "react-helmet": "^5.2.1", "react-read-more-read-less": "^1.0.7", "react-to-print": "^2.6.3", "redux": "^4.0.1", "slash2": "^2.0.0", "umi": "^2.9.6", "umi-plugin-pro-block": "^1.3.4", "umi-plugin-react": "^1.10.1", "umi-request": "^1.2.7", "webpack-theme-color-replacer": "^1.2.15" },
moment/moment#5472 moment/moment#5481 看起来是
moment
最近升级的问题 Workaround: 降级moment
yarn add moment@2.24.0
我试了 没用啊 我的 就是2.24.0 的 没用
npm uninstall moment -S 再 重新 npm install moment@2.24.0 -S ,就可以了
如果用的是yarn,在package.json里添加这样一句, "resolutions": { "moment": "2.24.0" } 一开始没生效,我把dependencies里的moment固定成了2.24.0 再跑一遍yarn就好了,可以解决问题
good! It solved my problem
hey @Rapiz1 you just saved me. Thanks.
Someone told here.uninstall moment and install 24.0 version but this is not working.I will fix
一样我今天clone新项目后也起不来 命令行报这些 警告警告已编译为2条警告11:21:23
./node_modules/@ant-design/pro-table/node_modules/moment/src/lib/locale/locales.js中的警告
关键依赖项:依赖项的请求是一个表达式
./node_modules/rc-picker/node_modules/moment/src/lib/locale/locales.js中的警告
关键依赖项:依赖项的请求是一个表达式
你解决了吗、?
一样我今天clone新项目后也起不来 命令行报这些 警告警告已编译为2条警告11:21:23 ./node_modules/@ant-design/pro-table/node_modules/moment/src/lib/locale/locales.js中的警告 关键依赖项:依赖项的请求是一个表达式 ./node_modules/rc-picker/node_modules/moment/src/lib/locale/locales.js中的警告 关键依赖项:依赖项的请求是一个表达式
你解决了吗、?
我的问题和你一样。
参考这个文档: https://github.com/yarnpkg/rfcs/blob/master/implemented/0000-selective-versions-resolutions.md
太长不看:
"dependencies": { "@ant-design/colors": "^3.1.0", "@ant-design/pro-layout": "^4.5.16", "@antv/data-set": "^0.10.2", "antd": "^3.23.6", "classnames": "^2.2.6", "dva": "^2.4.1", "echarts": "^4.7.0", "echarts-for-react": "^2.0.15-beta.1", "html2canvas": "^1.0.0-rc.5", "jquery": "^3.5.0", "lodash": "^4.17.11", "moment": "2.24.0", "omit.js": "^1.0.2", "path-to-regexp": "^3.1.0", "qs": "^6.9.0", "react": "^16.8.6", "react-copy-to-clipboard": "^5.0.1", "react-dom": "^16.8.6", "react-helmet": "^5.2.1", "react-read-more-read-less": "^1.0.7", "react-to-print": "^2.6.3", "redux": "^4.0.1", "slash2": "^2.0.0", "umi": "^2.9.6", "umi-plugin-pro-block": "^1.3.4", "umi-plugin-react": "^1.10.1", "umi-request": "^1.2.7", "webpack-theme-color-replacer": "^1.2.15" }, "resolutions": { "**/moment": "2.24.0" },
但是要注意这样所有的moment都是2.24.0了,需要测试一下是否影响业务逻辑。
如果用的是yarn,在package.json里添加这样一句, "resolutions": { "moment": "2.24.0" } 一开始没生效,我把dependencies里的moment固定成了2.24.0 再跑一遍yarn就好了,可以解决问题
感谢,这波操作完可以动了
moment/moment#5472 moment/moment#5481 看起来是
moment
最近升级的问题 Workaround: 降级moment
yarn add moment@2.24.0
我试了 没用啊
先把旧版本卸载,再重新安装,我这边是没问题的了
我卸载后重新安装也没用,还是照样报错
我用的是idea :1.移除:yarn remove moment 2.增加:yarn add moment@2.4.0 3.检查yarn.lock 是否有2.25.1moment 如果有,手动将2.25.1跟换为2.24.0,跟换时版本对应地址也要跟换。在yarn一下 启动项目ok.
Latest moment package is causing this issue. Add below in your package.json file to point moment to "2.24.0"
"resolutions": {
"moment": "2.24.0"
}
🐛 bug 描述
无法访问
localhost:8000
,加载一段时间后报错Error: Cannot find module './locale'
📷 复现步骤
yarn
yarn start
localhost:8000
🏞 期望结果
正常运行
© 版本信息
🚑 其他信息