vue2.0 打包发布完整版解决页面空白
vue+element 打包发布配置
·
在vue的初学者中很多人都认为只需要npm run build 输入完成后就可以放任不管
最后打包后会发现index页面是空白甚至liver server服务开启都是空白
其实你只需要做如下几部配置
1)!!!注意 这里是 我项目的完整列表
最后一个vue.config.js 是必须添加的如果你项目里没有的话就自己添加一个
这里是vue.config.js 的配置,里面内容我会放到下方
//打包配置文件
module.exports = {
assetsDir: 'static',
parallel: false,
/*
下方配置需要注意!
如果你的项目中引用了静态文件比如图片路径是 ./ 或者../
打包时候需要求改为 ./ 如果没有人用任何非网络路径的就默认 / 就ok了
*/
publicPath: './',
}
2)在config文件中有一个index.js文件需要配置你的文件路径
找到你自己里面的 build 完整替换这部分就行
build: {
// Template for index.html
index: path.resolve(__dirname, '../dist/index.html'),
// Paths
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static',
// 配置项在这里 默认的是 / 咱们CTRL+C CTRL+V 就行
assetsPublicPath: './',
/**
* Source Maps
*/
productionSourceMap: true,
// https://webpack.js.org/configuration/devtool/#production
devtool: '#source-map',
// Gzip off by default as many popular static hosts such as
// Surge or Netlify already gzip all static assets for you.
// Before setting to `true`, make sure to:
// npm install --save-dev compression-webpack-plugin
productionGzip: false,
productionGzipExtensions: ['js', 'css'],
// Run the build command with an extra argument to
// View the bundle analyzer report after build finishes:
// `npm run build --report`
// Set to `true` or `false` to always turn it on or off
bundleAnalyzerReport: process.env.npm_config_report
}
3)如果你是用了element UI 可能会导致 uI框架的 iCON失效变成方框那么你只需另外配置一个小部分即可
function generateLoaders (loader, loaderOptions) {
const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
if (loader) {
loaders.push({
loader: loader + '-loader',
options: Object.assign({}, loaderOptions, {
sourceMap: options.sourceMap
})
})
}
// Extract CSS when that option is specified
// (which is the case during production build)
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
fallback: 'vue-style-loader',
publicPath: '../../',// 解决了element UI icon 是方框路径问题
})
} else {
return ['vue-style-loader'].concat(loaders)
}
}
然后你就可以 试试打包了!此时打包完成后的 dist下的index是可以直接本地打开的!如果不对的话可能是你的文件没有配置对!第一次写这玩意 大神勿喷!后续会努力写的更好 希望对你有帮助
!!!!!注意 按照上方这样配置打包时
router下的index.js 得是 {mode:'hash' }不能是 {mode: 'history'}
更多推荐
已为社区贡献1条内容
所有评论(0)