1. 配置文件
module.exports = {// ......// 相对路径都是相对于index.js所在的目录config开始的build: {// index,assetsRoot两个路径基本不用改动,只是用于文件打包存放的路径// index.html的路径index: path.resolve(__dirname, '../dist/index.html'),// js,css,fonts夹等资源的路径assetsRoot: path.resolve(__dirname, '../dist'),// 下面这种写法指定静态文件 js/css夹等与index平级// 指定为'/' 会打包会出现错误,最高只能指定到当前目录’./' 指定目录不存在会自动创建// 也就是说js,css文件夹的路径其实是上面的: ’../dist' + assetsSubDirectoryassetsSubDirectory: 'static',// index.html中引用资源的前缀// 相当于static/js/app.js的前缀 eg: ./static/js... /static/js.....assetsPublicPath: '/',// ......}
}
2. 打包示例(npm/cnpm run build)
2.1 index.html
index: path.resolve(__dirname, '../dist/index.html')
index: path.resolve(__dirname, '../dist/f1/index.html')
2.2 assetsRoot, assetsSubDirectory
// 不指定 assetsSubDirectory
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: ''
// 指定 assetsSubDirectory
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static'
2.3 assetsPublicPath
assetsPublicPath: '/'
// 会自动补末尾的'/', '/temp'和'/temp/'都可以
assetsPublicPath: '/temp/'
Ps:
- 打包出来index.html属性,路径不带双引号,可能会报错
- meta标签没有闭合 可能会报错
- 在打包到SpringBoot resources/static时,按第一点的默认配置打包,然后将dist下的所有文件/文件夹直接复制到resources/static下。