收藏
回答

微信7.0.5代码执行中断

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 客户端 7.0.5 2.6.6

- 当前 Bug 的表现(可附上截图)


setData的回调没有执行

- 预期表现


- 复现路径


- 提供一个最简复现 Demo


initData() { // 弹窗试衣会设置一个全局的avatarId, 如果存在,进入当前页面会获取最新模型,否则创建新的模型,用完需要清0 const avatarId = myApp.globalData.avatarId try { getPreferences().then(res => { // 获取用户配置 console.log('headedpre') const { defaultAvatar, defaultStore, defaultBackground } = res.data const defaultAvatarId = defaultAvatar.id const defaultStoreId = defaultStore.id const oldDefaultAvatarId = this.data.defaultAvatarId console.log('beginSetData') this.setData({ imageBackground: defaultBackground, defaultStoreId, defaultAvatarId, backgroundImage: defaultBackground.image.original }, () => { console.log('getBGover') const { amendment } = defaultAvatar const defaultAvatarGender = amendment.gender // 默认形象的性别 const onNext = (imageModel) => { console.log('nextBegin', avatarId) if (avatarId) { // 能获取specId console.log('从其他页面进入,有虚拟试衣形象ID avatarId', avatarId) // this.createAvatarsModels({mSpecs, defaultAvatarId}) this.getAvatarIdModels(avatarId) myApp.globalData.avatarId = 0 } else if (imageModel && imageModel.gender === defaultAvatarGender && imageModel.id !== this.data.fittingImageId) { console.log('上次试衣的ID imageModel.id:', imageModel.id) this.getAvatarIdModels(imageModel.id) } else { // 没有服装ID if (this.isChangeGender(oldDefaultAvatarId)) { // 如果默认形象或性别修改了需要新建形象 this.createAvatarsModels({ mSpecs: [], defaultAvatarId, type: 'default' }) } else if (this.isChangeBody(oldDefaultAvatarId)) { // 如果只是修改身高体重要穿上之前的服装 this.createAvatarsModels({ mSpecs: this.data.garments, defaultAvatarId}) } } } onNext(wx.getStorageSync('imageModel')) }) }).catch(err => { // console.log(err) Dialog.alert({ title: '网络异常请!检查网络!', selector: '#van-dialog', confirmButtonText: '知道了' }).then(() => { // 修改虚拟形象的ID }) }) } catch (e) { console.log(e) } },
最后一次编辑于  07-27  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏关注问题回答

1 个回答