首页 >web前端 >前端问答 >vue什么时候会出现白屏

vue什么时候会出现白屏

青灯夜游
青灯夜游原创
2022-11-29 19:25:155212浏览

vue出现白屏的3种情况:1、把路由模式mode设置成history了;只需改为hash或者直接删除模式配置,如果非要用history的话,在服务端加一个覆盖所有情况的候选资源即可。2、打包后的dist目录下的文件引用路径不对,会因找不到文件而报错导致白屏;修改一下config下面的index.js中bulid模块导出的路径即可。3、项目中用了es6语法,但浏览器不支持es6。

vue什么时候会出现白屏

本教程操作环境:windows7系统、vue3版,DELL G3电脑。

vue出现白屏现象主要几种原因和解决办法

第一种:由于把路由模式mode设置成history了,默认是hash。

解决方法:改为hash或者直接删除模式配置,如果非要用的话,在服务端加一个覆盖所有情况的候选资源。

如果你改成了history模式的话,打开也会是一片空白。所以改为hash或者直接把模式配置删除,让它默认的就行 。如果非要使用history模式的话,需要你在服务端加一个覆盖所有的情况的候选资源:如果URL匹配不到任何静态资源,则应该返回一个index.html,这个页面就是你app依赖页面。

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

解决办法:修改一下config下面的index.js中bulid模块导出的路径。

因为index.html里边的内容都是通过script标签引入的,而你的路径不对,打开肯定是空白的。先看一下默认的路径。

build: {
    // Template for index.html
    index: path.resolve(__dirname, '../dist/index.html'),

    // Paths
    assetsRoot: path.resolve(__dirname, '../dist'),
    assetsSubDirectory: 'static',
    assetsPublicPath: './',

    /**
     * Source Maps
     */

    productionSourceMap: false,
    // 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
  }

assetsPublicPath默认的是  ‘/’  也就是根目录。而我们的index.html和static在同一级目录下面。  所以要改为  ‘./ ’;

如果还是报错,修改build/webpack.prod.conf.js文件下webpackConfig,在output属性中添加 publicPath:"./",重新运行打包。

output: {
    path: config.build.assetsRoot,
    filename: utils.assetsPath('js/[name].[chunkhash].js'),
    chunkFilename: utils.assetsPath('js/[id].[chunkhash].js')
  }

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

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

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

【学习视频分享:vue视频教程web前端视频

以上是vue什么时候会出现白屏的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn