小程序
小游戏
企业微信
微信支付
扫描小程序码分享
最近在学习写一个外卖的小程序,用户点击支付的时候是这样的代码:
myData[0]是我虚拟的数据——鱼香肉丝的点餐情况。
但是我发现,最开始从allDishes获得的myData[0]的数据是客户点击支付的时候鱼香肉丝点了多少数量,这段代码明明没有任何改动数据的地方,但是到了地狱嵌套的最里层,myData[0]的amount数量居然被清零了……
请问问题到底出在哪?
另外,因为showModal会堆积起来,为了能顺利执行这几步流程,就只好地狱嵌套,这段逻辑又该怎么优化呢?
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
console.log里的 myData[0] 改成 JSON.parse(JSON.stringify(myData[0])),看看打印出来的是啥
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
结果似乎还是一样的……关键问题是我什么对数据的操作都没有,为啥会被清零了我很不了解……Orz这难道是地狱嵌套的BUG么?
更邪门的地方来了……
我在每个嵌套的地方都放了一个console.log:
这个结果真是让我出乎意料啊……
也就是说扫描二维码之后清空了数据内容……这是为啥……
有其他地方修改过 allDishes不
到了这步就是客人点好餐结账了,也就是说gotoPay里面取到的this.data.allDishes是最终数量了,除非我这段代码里有修改,否则绝对不会有变动。
但奇怪的就是这里,明明什么都没操作,allDishes内容却变了……
你说这会不会是多层嵌套后有什么机制导致的……Orz
肯定是写的有问题。。能做个代码片段吗
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
console.log里的 myData[0] 改成 JSON.parse(JSON.stringify(myData[0])),看看打印出来的是啥
结果似乎还是一样的……关键问题是我什么对数据的操作都没有,为啥会被清零了我很不了解……Orz这难道是地狱嵌套的BUG么?
更邪门的地方来了……
我在每个嵌套的地方都放了一个console.log:
这个结果真是让我出乎意料啊……
也就是说扫描二维码之后清空了数据内容……这是为啥……
有其他地方修改过 allDishes不
到了这步就是客人点好餐结账了,也就是说gotoPay里面取到的this.data.allDishes是最终数量了,除非我这段代码里有修改,否则绝对不会有变动。
但奇怪的就是这里,明明什么都没操作,allDishes内容却变了……
你说这会不会是多层嵌套后有什么机制导致的……Orz
肯定是写的有问题。。能做个代码片段吗