webpack这些年遇到的报错
1.
这个问题是因为webpack版本不同导致的写法谬误
批改前代码:
options: {
modules: true, // 以前的版本设置modules为true,而后其余属性和modules同级
getLocalIdent: (context, localIdentName, localName) => {
if (
context.resourcePath.includes('node_modules') ||
context.resourcePath.includes('ant.design.pro.less') ||
context.resourcePath.includes('global.less')
) {
return localName;
}
const match = context.resourcePath.match(/src(.*)/);
if (match && match[1]) {
const antdProPath = match[1].replace('.less', '');
const arr = slash(antdProPath)
.split('/')
.map(a => a.replace(/([A-Z])/g, '-$1'))
.map(a => a.toLowerCase());
return `antd-pro${arr.join('-')}-${localName}`.replace(
/--/g,
'-',
);
}
return localName;
},
},
批改后代码:
modules: {// 属性都写在modules外面
getLocalIdent: (context, localIdentName, localName) => {
if (
context.resourcePath.includes('pages') ||
context.resourcePath.includes('node_modules') ||
context.resourcePath.includes('ant.design.pro.less') ||
context.resourcePath.includes('global.less')
) {
return localName;
}
const match = context.resourcePath.match(/src(.*)/);
if (match && match[1]) {
const antdProPath = match[1].replace('.less', '');
const arr = slash(antdProPath)
.split('/')
.map(a => a.replace(/([A-Z])/g, '-$1'))
.map(a => a.toLowerCase());
return `antd-pro${arr.join('-')}-${localName}`.replace(
/--/g,
'-',
);
}
return localName;
},
},
发表回复