这篇文章主要介绍“React不支持less文件怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“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电脑。
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文件怎么解决”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网html频道,小编每天都会为大家更新不同的知识点。
--结束END--
本文标题: React不支持less文件怎么解决
本文链接: https://lsjlt.com/news/97648.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0