'use strict'
const path = require('path')
const os = require('os');
const port = 8080; //设置端口号
function resolve(dir) {
return path.join(__dirname, dir)
}
let needHost = ''
try {
let network = os.networkInterfaces(); // 获得网络接口列表。
needHost = network[Object.keys(network)[0]][1].address; // 本机ip
// needHost = network[Object.keys(network)[0]][3].address; // 手机wifi
} catch (e) {
needHost = 'localhost'
}
module.exports = {
publicPath: '/', //基本路径
outputDir: "dist", //打包后的 文件目录
assetsDir: "static", //放置打包生成的静态资源目录'
indexPath: "index.html", //html的输出路径
productionSourceMap: false, //打包吧生成.map文件
filenameHashing: true, //打开hash模式 false是关闭hash模式
lintOnSave: false, //是否保存的时候使用`eslint-loader`进行检查
devServer: {
port,
open: true, //自动打开浏览器
hot: true, //打开热更新
host: '0.0.0.0',
public: needHost + ':' + port, //Network: unavailable
https: false,
hotOnly: false,
disableHostCheck: true
},
configureWebpack: {
resolve: {
alias: {
"@": resolve('src')
}
}
},
configureWebpack: config => {
if (process.env.NODE_ENV === "production") {
config.mode = "production";
//打包文件大小配置
config.performance = {
hints: "warning", //枚举
maxEntrypointSize: 10000000, //入口起点的最大体积
maxAssetSize: 30000000, //生成文件是最大体积
assetFilter: function(assetFilename) {
//提供资源文件名单断言函数
return assetFilename.endsWith('.css') || assetFilename.endsWith('.js');
}
}
}
}
}
vue.config.js
最新推荐文章于 2025-05-24 15:24:14 发布