时间:2022-01-10 15:17:39 | 栏目:vue | 点击:次
前言 :
最近使用了vue-cli3.0 开发了一个移动网页端项目,准备打包发布了。按照以往的流程 npm run build
问题来了
打开 dist index.html 文件发现白屏。打开调试后 发现文件引用路径不对
根据以往的经验 根目录下新建 vue.config.js
配置 publicPath
module.exports = { ... runtimeCompiler: true, publicPath: './' ... }
满心欢喜的打开,结果还是白屏。打开调试发现文件路径是正确的,这就唧唧了!!。
发现问题
各种百度。发现了样的问题 一看vue-router的mode配置可能会影像打包后的链接地址,然后看看我自己的router:
var router = new Router({ mode: 'history' })
vue-router对mode的说明:
mode
类型: string
默认值: "hash" (浏览器环境) | "abstract" (Node.js 环境)
可选值: "hash" | "history" | "abstract"
配置路由模式:
hash: 使用 URL hash 值来作路由。支持所有浏览器,包括不支持 HTML5 History Api 的浏览器。
history: 依赖 HTML5 History API 和服务器配置。
abstract: 支持所有 JavaScript 运行环境,如 Node.js 服务器端。如果发现没有浏览器的 API,路由会自动强制进入这个模式。
解决问题
终于弄明白了,如果使用history模式上线,必须要服务端在服务器上有对应的模式才能使用history(看上面链接),如果服务器上没有配置,可以先使用默认的hash;
补充知识:vue打包项目以后白屏和图片加载不出来问题解决方法
vue打包项目以后部署访问白屏。查看控制台是404.这是由于打包的时候没有设置对静态资源路径。原文件是绝对路径,需要改成相对路径。
1.白屏修改config/index.js
2.图片加载不出来,修改build/utils.js