常见白屏问题

目前在对接客户技术支持上,发现反馈页面白屏的问题是最多的。我们经过排查,发现白屏问题往往都是由客户自己的代码引起的。
常见的原因可分为以下几种:

1.编译后的 app.native.js 文件大小不对

2.class用法不恰当

如以下写法

<div :class="item.buy=='20'?'desc':''"></div>

:class 要求是数组,需要加个[]
不然会报以下错误

TypeError: second argument to Function.prototype.apply must be an Array-like object (evaluating 'u.push.apply(u, o.class)')

3.页面写了不支持的样式语法

jsnative环境和web环境有一些非常明显的差异,需要在开发过程中尽量规避,否则会造成应用无法启动、页面白屏或者页面报错的问题,具体标准参考 jsn开发注意事项

4.jsn项目以H5页面的形式访问,如index.html#/index

解决方法:app.js中在应用启动的时候改变rem的计算模式,默认值为document,设置为screen时可以兼容移动端h5页面,此时deviceWidth的值等同于window.screen.width,从而计算出正确的rem值。

Light.start({
    remMode:"screen"
})

5.lightview的调试模式未关闭

lightview的调试模式如果忘记关闭了,直接去预览其他的工程也会白屏。

6.使用了离线包, 但网络不通

如果页面中使用了离线包,但是在本地却没有预置离线包,在网络比较差的情况下会出现白屏。