千家信息网

React不支持less文件怎么解决

发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,这篇文章主要介绍"React不支持less文件怎么解决"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"React不支持less文件怎么解决"文章能帮助大家解决问
千家信息网最后更新 2025年01月18日React不支持less文件怎么解决

这篇文章主要介绍"React不支持less文件怎么解决"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"React不支持less文件怎么解决"文章能帮助大家解决问题。

方法:1、利用"npm install less less-loader"安装less;2、在"module.rules"中将"test:/\.css$/"修改为"test:/\.(css|less)$/";3、重新启动后即可支持less。

本教程操作环境:Windows10系统、react17.0.1版、Dell G3电脑。

React不支持less文件怎么办

create-react-app是由React官方提供,并推荐构建React单页应用程序的最佳方法,但是默认不支持less,需要手动集成:

1,必须手动安装less

npm install less less-loader

2,暴露webpack配置文件【npm run eject】,修改weppack.config.js文件中,添加less配置

在module.rules节点中找到 css 文件的加载规则:

test: /\.css$/ 修改为 test: /\.(css|less)$/;

在use数组最后新增一个对象元素{loader: require.resolve('less-loader')}。

修改完成后:

const getStyleLoaders = (cssOptions, preProcessor) => {    const loaders = [      isEnvDevelopment && require.resolve('style-loader'),      isEnvProduction && {        loader: MiniCssExtractPlugin.loader,        options: Object.assign(          {},          shouldUseRelativeAssetPaths ? { publicPath: '../../' } : undefined        ),      },      {        loader: require.resolve('css-loader'),        options: cssOptions,      },      {        // Options for PostCSS as we reference these options twice        // Adds vendor prefixing based on your specified browser support in        // package.json        loader: require.resolve('postcss-loader'),        options: {          // Necessary for external CSS imports to work          // https://github.com/facebook/create-react-app/issues/2677          ident: 'postcss',          plugins: () => [            require('postcss-flexbugs-fixes'),            require('postcss-preset-env')({              autoprefixer: {                flexbox: 'no-2009',              },              stage: 3,            }),          ],          sourceMap: isEnvProduction ? shouldUseSourceMap : isEnvDevelopment,        },              },      {        loader: require.resolve('less-loader') // compiles Less to CSS      }    ].filter(Boolean);    if (preProcessor) {      loaders.push({        loader: require.resolve(preProcessor),        options: {          sourceMap: isEnvProduction ? shouldUseSourceMap : isEnvDevelopment,        },      });    }    return loaders;  };

需要重新启动项目,即可看到less样式可用。

关于"React不支持less文件怎么解决"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。

0