66 lines
1.6 KiB
JavaScript
66 lines
1.6 KiB
JavaScript
const path = require("path");
|
||
|
||
const resolve = (dir) => {
|
||
return path.join(__dirname, dir);
|
||
};
|
||
|
||
// 项目部署基础
|
||
const BASE_URL = process.env.NODE_ENV === "development" ? "/" : "/";
|
||
|
||
const sourceMap = process.env.NODE_ENV === "development";
|
||
|
||
module.exports = {
|
||
publicPath: BASE_URL,
|
||
// 如果你不需要使用eslint,把lintOnSave设为false即可
|
||
lintOnSave: false,
|
||
chainWebpack: (config) => {
|
||
config.resolve.alias.set("@", resolve("src"));
|
||
config.resolve.alias.set("_c", resolve("src/components"));
|
||
|
||
|
||
config.module.rule('images').test(/\.(png|jpe?g|gif)(\?.*)?$/).use('url-loader').loader('url-loader').options({
|
||
limit: 10000,
|
||
esModule: false,
|
||
outputPath: "images/"
|
||
})
|
||
|
||
config.module.rule('images')
|
||
.test(/\.(png|jpe?g|gif)(\?.*)?$/)
|
||
.use('image-webpack-loader')
|
||
.loader('image-webpack-loader')
|
||
.options({
|
||
bypassOnDebug: true,
|
||
mozjpeg: {
|
||
progressive: true,
|
||
quality: 65
|
||
},
|
||
optipng: {
|
||
enabled: false,
|
||
},
|
||
pngquant: {
|
||
quality: [0.65, 0.90],
|
||
speed: 4
|
||
},
|
||
gifsicle: {
|
||
interlaced: false,
|
||
},
|
||
webp: {
|
||
quality: 75
|
||
}
|
||
})
|
||
|
||
|
||
|
||
|
||
|
||
|
||
},
|
||
|
||
configureWebpack: {
|
||
output: {
|
||
filename: "js/[hash].js",
|
||
},
|
||
},
|
||
// 设为false打包时不生成.map文件
|
||
productionSourceMap: sourceMap,
|
||
}; |