如何让Next.js同时支持导入css和less
Posted zhaohd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何让Next.js同时支持导入css和less相关的知识,希望对你有一定的参考价值。
最近在用Next.js (版本9.5.5)搭建项目时,发现css和less同时导入常常会报错,查阅一番资料后找到了一个靠谱的解决方案:
在目录下新建next.config.js
文件,新增下列代码(先安装@zeit/next-less
模块)
const path = require(‘path‘)
const withLess = require(‘@zeit/next-less‘)
module.exports = withLess({
lessLoaderOptions: {
javascriptEnabled: true,
// modifyVars: themeVariables,
},
webpack: (config) => {
const builtInLoader = config.module.rules.find((rule) => {
if (rule.oneOf) {
return (
rule.oneOf.find((deepRule) => {
if (deepRule.test && deepRule.test.toString().includes(‘/a^/‘)) {
return true;
}
return false;
}) !== undefined
);
}
return false;
});
if (typeof builtInLoader !== ‘undefined‘) {
config.module.rules.push({
oneOf: [
...builtInLoader.oneOf.filter((rule) => {
return (rule.test && rule.test.toString().includes(‘/a^/‘)) !== true;
}),
],
});
}
return config;
},
})
参考 https://github.com/vercel/next-plugins/issues/598#issuecomment-618461761
以上是关于如何让Next.js同时支持导入css和less的主要内容,如果未能解决你的问题,请参考以下文章
如何忽略 Next.js 组件中导致单元测试中的解析错误的 CSS 模块导入
如何使用 Next.js、Ant Design、Less 和 TypeScript 配置 Storybook.js Webpack