Win7下使用react-app-rewired提示babel-loader no found

发布于 2022-09-05 19:45:41 字数 502 浏览 9 评论 0

按照新版官网在 “create-react-app 中使用” 的文档,使用react-app-rewired。
start时闪过babel-loader no found的提示,CSS不能正常加载。
如果重新install babel-loader或者babel-runtime会removed一些文件,然后提示react-app-rewired不存在。
环境:
Win7 + node.js 6.11.0 + npm 5.3.0
create-react-app 1.4.0
"antd": "^2.11.0"
"babel-loader": "7.0.0",
"babel-plugin-import": "^1.2.1",
"react-app-rewired": "^1.2.2"

使用原先的eject方法没有问题


按照大熊的方法改了确实可行。谢谢
但是每次yarn add后都要找到这个文件,删除/一次
还有一些某明奇妙的错误。
所以我还是老老实实的eject吧

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

ゝ偶尔ゞ 2022-09-12 19:45:41

作者源代码有问题,需要修改源码,把 node_modules/react-app-rewire/index.js 中rule.loader.indexOf("babel-loader/") != -1;的'/'删掉

GitHub issue

半世晨晓 2022-09-12 19:45:41

有没有其他的解决方案

玩物 2022-09-12 19:45:41

主要是因为create-react-app的webpack脚本的规则改了,react-app-rewired的作者没及时更新,可以等待修复。

建议不要eject,react-app-rewired这个工具还是很方便的,不用暴露出那么一大坨配置。如果你想更改内置的webpack配置,你可以直接在config-overrides文件里添加。
比如添加alias:

var path = require('path')
const { injectBabelPlugin } = require('react-app-rewired');

module.exports = function override(config, env) {
  config.resolve.alias['@'] = resolve('src')    // 往config内注入配置
  config.resolve.alias['@cp'] = resolve('src/components')
  config = injectBabelPlugin(['import', { libraryName: 'antd', style: 'css' }], config);
  return config;
};

function resolve (dir) {
  return path.join(__dirname, dir)
}
深居我梦 2022-09-12 19:45:41

react-app-rewire中less loder怎样添加

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文