详细问题描述
1、在computed里面监听一个数据变化,数据变化后执行一个for循环,但是循环的数组没获取到值,是一个undefind值。导致报错,具体错误代码如下:
TypeError: Cannot read property 'length' of undefined at D:/HBuilderX.1.4.1.20181228.full/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/mpvue/index.js:638
代码如下:
computed: {
posFlag() {
for (var i = 0; i < this.posArr.length; i++) {
this.reqParams += this.posArr[i].name
}
return this.reqParams
}
},
重现步骤
[步骤]
1、经自己反复测试,发现在vue页面的computed和watch方法里面执行一段错误代码,必定会导致uniapp源码报错。错误代码(TypeError: Cannot read property 'length' of undefined at D:/HBuilderX.1.4.1.20181228.full/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/mpvue/index.js:638),该错误出现后当前报错页面显示空白,再打开其他页面,其它页面也无法正常显示都为空白页了。
2、数据绑定的组件内部,mounted/onload生命周期内部有报错也会导致同样错误,但是不是必现。
[结果]
[期望]
[如果语言难以表述清晰,拍一个视频或截图,有图有真相]
IDE运行环境说明
[IDE版本号]
HBuilderX 1.9.4.20190426
[windows版本号]
windows 7
[mac版本号]
uni-app运行环境说明
[运行端是h5或app或某个小程序?]
app
[运行端版本号]
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]
[编译模式是老模板模式还是新的自定义组件模式?]
App运行环境说明
[Android版本号]
MIUI 10.2.1.0
[iOS版本号]
[手机型号]
小米pad M1806D9PE
[模拟器型号]
附件
[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]
[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]
[App安装包或H5地址]
[可重现代码片段]
联系方式
[QQ]
0 个回复