返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vue首屏白屏问题的原因和解决方法讲解
  • 279
分享到

Vue首屏白屏问题的原因和解决方法讲解

Vue首屏白屏Vue白屏Vue白屏问题 2023-05-19 09:05:18 279人浏览 泡泡鱼
摘要

目录一.路由模式错误(路由重复或者没有配置路由)二.dist中文件引用路径错误(Vue项目打包的路径问题)三.浏览器不支持es6四.加载文件资源过大vue首屏白屏原因大概有以下几点:

vue首屏白屏原因大概有以下几点:

一.路由模式错误(路由重复或者没有配置路由)

(1)由于把路由模式mode设置成history了,默认是hash

解决方法:将模式改为hash模式,或者直接把模式配置删除,而且history需要后端配合

(2)做动态路由时,next()放行与next(...to, replace)区别造成的白屏,实质是路由重复

(3)第一次正常访问,刷新后白屏,vuex没有与本地存储结合,刷新后导致数据丢失

二.dist中文件引用路径错误(vue项目打包的路径问题)

打包后的dist目录下的文件引用路径不对,因找不到文件而报错导致白屏

解决方法:vue.config.js中 publicPath: ''./"

三.浏览器不支持es6

在项目中使用了es6语法,一些浏览器不支持es6,造成编译错误不能解析而造成白屏

解决方法:

安装Babel ,Babel 会把这些新语法转译成较低版本的代码。

npm install --save-dev @babel/core @babel/cli @babel/preset-env

四.加载文件资源过大

单页面应用的 html 是靠 js 生成,因为首屏需要加载很大的js文件(app.js 和vendor.js),所以当网速差的时候会产生一定程度的白屏

解决方法:

路由懒加载,组件懒加载

路由懒加载

// 1、Vue异步组件技术:
{
  path: '/home',
  name: 'Home',
  component: resolve => require(['../views/home.vue'], resolve)
}
// 2、es6提案的import()
{
  path: '/',
  name: 'home',
  component: () => import('../views/home.vue')
}
// 3、webpack提供的require.ensure()
{
  path: '/home',
  name: 'Home',
  component: r => require.ensure([],() =>  r(require('../views/home.vue')), 'home')
}

组件懒加载

// import 方式
components:{
  "dailyModal":()=>import("./dailyModal.vue")
},
// require 方式
components:{
  "dailyModal":resolve=>require(['./dailyModal.vue'],resolve)
},

到此这篇关于Vue首屏白屏问题的原因和解决方法讲解的文章就介绍到这了,更多相关Vue首屏白屏内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Vue首屏白屏问题的原因和解决方法讲解

本文链接: https://lsjlt.com/news/212809.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作