網(wǎng)上很多說自己的VUE項(xiàng)目通過Webpack打包生成的list文件,放到HBulider打包后,通過手機(jī)打開一片空白。這個(gè)主要原因是路徑的問題。
1、記得改一下config下面的index.js中bulid模塊導(dǎo)出的路徑。因?yàn)閕ndex.html里邊的內(nèi)容都是通過script標(biāo)簽引入的,而你的路徑不對(duì),打開肯定是空白的。先看一下默認(rèn)的路徑。
module.exports = {
build: {
env: require('./prod.env'),
index: path.resolve(__dirname, '../dist/index.html'),
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static',
assetsPublicPath: '/',
productionSourceMap: true,
assetsPublicPath默認(rèn)的是 ‘/’ 也就是根目錄。而我們的index.html和static在同一級(jí)目錄下面。 所以要改為 ‘./ ’
2、另外還需要注意一點(diǎn)。src里邊router/index.js路由配置里邊默認(rèn)模式是hash,如果你改成了history模式的話,打開也會(huì)是一片空白。所以改為hash或者直接把模式配置刪除,讓它默認(rèn)的就行 。如果非要使用history模式的話,需要你在服務(wù)端加一個(gè)覆蓋所有的情況的候選資源:如果URL匹配不到任何靜態(tài)資源,則應(yīng)該返回一個(gè)index.html,這個(gè)頁(yè)面就是你app依賴頁(yè)面。
// mode: 'history' // 默認(rèn)hash