const path = require("path"); function resolve(dir) { return path.join(__dirname, dir); } module.exports = { publicPath: './', chainWebpack: config => { // 配置pug config.module.rule('pug') .test(/\.pug$/) .use('pug-html-loader') .loader('pug-html-loader') .end() // 配置别名 config.resolve.alias .set("@", resolve("src")) .set("@less", resolve("src/assets/less")) .set("@page", resolve("src/assets/less/page")) .set("@components", resolve("src/components")) .set("@views", resolve("src/views")) // 配置 less 的自动导入 const types = ['vue-modules', 'vue', 'normal-modules', 'normal'] types.forEach(type => addStyleResource(config.module.rule('less').oneOf(type))) } } function addStyleResource (rule) { rule.use('style-resource') .loader('style-resources-loader') .options({ patterns: [ path.resolve(__dirname, './src/assets/less/_.less'), ], }) }