美文网首页纵横研究院VU...
Vue---hips--页面显示空白的问题

Vue---hips--页面显示空白的问题

作者: koala949 | 来源:发表于2019-12-01 22:43 被阅读0次

    问题描述:
    项目在低版本的手机上或着其他浏览器上(比如 ie),打不开,直接显示空白,报错为语法错误。
    显示详情:

    错误显示.png

    解决步骤:

    1. 因为是低版本的兼容性问题,那首先就做一些js的低版本适配
    • 安装babel-polyfill【(npm)[https://babeljs.io/docs/en/babel-polyfill]】:Babel默认只转换新的JavaScript语法(syntax),如箭头函数等,而不转换新的API,比如Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise等全局对象,以及一些定义在全局对象上的方法(比如Object.assign)都不会转码;因此我们需要polyfill;

    • 安装es6-promise【(npm)[https://www.npmjs.com/package/es6-promise]】:这是ES6 Promise的polyfill,一般用来解决在ie9,10,11运行环境下存在的异步兼容性问题。

    ======>问题依旧存在

    1. 乖乖定位错误
      根据sourceMap能打开源代码,显示错误的地方。
      因为项目是打包后文件,在ie中点开语法错误,展开的内容就是一堆打包编译后的,错误就无法定位了。
      所以我们需要在vue.config.vue 文件中设置:productionSourceMap: true,
      之后在google浏览器中查看,举个例子(不是本次的错误原因,只是举个栗子):
      SourceMap的位置
      本次项目是用的vue-cli脚手架,可以在官方文档中查看一下关于SourceMap的配置:

    但是:
    ======>ie好像不支持脚手架的这种改法,依旧无法看到源码,故问题依旧存在。

    1. 继续定位错误
      这次只能从入口文件入手,一步一步排查,直到找到错误的地方。
    • (1)简化app.vue文件。


      注释后的app.vue

      ie显示依旧惨兮兮。


      页面依旧空白。。。
    • (2) app.vue都没进去,那就在main.js里面注释代码,估计是引入的某个依赖ie不支持?

    注释的mian.js内容

    就有了,把app.vue还原,哈,进入工程了:


    注释main.js后的页面显示

    然后。。。。一系列排除操作,
    竟然是
    Vue.use(Toast).use(Indicator).use(Dialog).use(Previewer)这一行。

    当时我就迷茫了,但是搜到网上有ie不识别element-ui关键字的解决办法比如这个,我就涨知识了。

    1. 求助大佬:
      了解到我们项目用的是老版本的hips种子工程,那个时候工程还没有做低版本的适配,于是大佬帮忙,他检查了之后修改了一些配置。




      vue.config.js-1
      vue.config.js-2

    ok。
    ======>重新yarn install,重新启动项目,问题解决~~~。

    相关文章

      网友评论

        本文标题:Vue---hips--页面显示空白的问题

        本文链接:https://www.haomeiwen.com/subject/rlbtgctx.html