最近遇到一个uniapp的白屏问题,报错如下:

reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack 
->Uncaught TypeError: Cannot read property 'FormData' of undefined
 at  (app-service.js:77615:67)
 at __webpack_require__ (app-service.js:80:30)
 at  (app-service.js:50640:16)
 at __webpack_require__ (app-service.js:80:30)
 at  (app-service.js:22405:19)
 at __webpack_require__ (app-service.js:80:30)
 at eval (<anonymous>:5:39)
 at  (app-service.js:22241:1)
 at __webpack_require__ (app-service.js:80:30)
 at eval (<anonymous>:3:16)

但是问题是我项目中并没有FormData这个变量,项目在浏览器中可以运行正常,真机测试调试也可以正常显示,但就是打包就白屏,重新进也一样。
最后发现问题出在引入的封装的调用接口的api文件中,应该在文件中引入使用的,结果在文件本身用了。。。
唉~老前辈留下的大坑啊。。。

不过,白屏的问题有很多种,有可能是配置文件中的配置有问题,也有可能是vuex的问题
uniapp获取元素createSelectorQuery获取节点也会出现白屏的问题,但在onReady()钩子函数中调用就可以解决,
或者你引入过iconfont的外部图标库,也有可能会有白屏的问题。
还看到过一个分包引起的白屏问题,可以在app-plus中配置:

"optimization": {
    "subPackages": true
  },
  "runmode" : "liberate" // 开启分包优化后,必须配置资源释放模式
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐