在react项目中使用了sass后导入antd.css报错

在react项目中使用了sass后导入antd.css报错

最近在项目导入了antd,在引用他样式的时候,项目报错,如果用import 导入antd.css,页面能正常出现,但终端这里一直报错,大概就是这个

Module Warning (from ./node_modules/source-map-loader/dist/cjs.js):
Failed to parse source map: ‘webpack://antd/./components/time-picker/style/index.less’ URL is not supported

找了以下原因,应该是css文件不能在这里被解析,要用less才行
解决方法:

npm install customize-cra react-app-rewired --dev
yarn add less-loader@7.3.0
yarn add babel-plugin-import

安装好上面的包以后,在根目录下新建config.overrides.js文件,把这段代码放进去

 const { override, addLessLoader, fixBabelImports } = require("customize-cra");
module.exports = override(
 
  fixBabelImports("import", {
    libraryName: "antd",
    libraryDirectory: 'es',
    style: "css",
  }),
  addLessLoader({
    lessOptions: {
      javascriptEnabled: true,
      modifyVars: { '@primary-color': '#1DA57A' },
    },
    sourceMap: true,
  }),
);

然后修改package.json文件中scripts的启动,把react-scripts,改成react-app-rewired

"scripts": {
    "start": "react-app-rewired start",
    "build": "react-app-rewired build",
    "test": "react-app-rewired test",
    "eject": "react-app-rewired eject"
  },

然后就好啦

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值