这两天在使用小程序时遇到了异常白屏问题,费了不少功夫才解决,把这次经历记录下来,作为以后的教训,希望遇到同样问题的同学可以快速解决,减少不必要的时间浪费。
问题表现
本来运行正常的代码,某天在真机上突然跑不起来,显示真机扫码后一直在,无法显示布局,但在模拟器上却能正常运行。
另外手机上也没有报错,在手机上打开之后可以看到初始化失败的log,这里就不贴log了,因为没什么参考价值。
问题分析
之前代码一直运行正常,今天突然跑不起来,首先想到是不是开发工具和本地环境出了问题,清除缓存、更新开发工具、重启电脑后发现问题不在环境上。
然后我用其他项目验证了一下,在本地编译运行一切正常,说明是项目代码有问题,无法运行。
最后我们检查了代码提交,发现是由于自定义组件的属性定义错误导致初始化失败。
问题解决了
以下是有问题的自定义组件代码:
wxml:
{ {?'没有更多':'正在加载...'}}
:
// /--/--.js
({
/**
* 组件属性列表
*/
:{
// 错误在此处定义
:=
})