首页 新闻 会员 周边 捐助

微信小程序如何实现购物车功能?

0
悬赏园豆:30 [已解决问题] 解决于 2019-03-21 13:30

目前遇到的问题就是第一次点击选规格按钮一切正常,但是如果再次点击购物窗口的数量就变成了了0...
初步考虑是因为每次点击都会被重新赋值,这个问题具体该如何解决呢?请大神给个思路吧

沧海的雨季的主页 沧海的雨季 | 初学一级 | 园豆:99
提问于:2019-03-19 21:50
< >
分享
最佳答案
0

你数据没同步清楚,加减按钮执行之后要把数据存起来,下次再点的时候用。执行添加到购物车再清掉

收获园豆:30
地火水 | 小虾三级 |园豆:1290 | 2019-03-20 10:17

具体如何存储呢?

沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 10:24

@沧海的雨季: 你使用缓存之后显示是正确的,加减的数据你又用了原始的数据,应该用缓存里面的数据。你最好把流程想清楚在纸上写下来,这样好理解一点

地火水 | 园豆:1290 (小虾三级) | 2019-03-20 10:32

@地火水: 在我点击选规格按钮后应该判断一下缓存里是否有数据,有数据应该去先用缓存里的数据,是这样么

沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 10:34

@沧海的雨季: 你先把逻辑理通顺再写我觉得,我之前的写法是直接改变原始数据,你这样应该也是一样实现的,不过你有两个数据注意不要弄混了

地火水 | 园豆:1290 (小虾三级) | 2019-03-20 10:39

@地火水: 直接改变原始数据?具体流程是怎么样的呢?越搞越弄的复杂了,昨天弄了一天也没弄个明白

沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 10:41

@沧海的雨季: 请求到服务器数据显示 -- 用户操作改变数据 -- 保存用户改变的数据 -- 显示用户改变的数据

地火水 | 园豆:1290 (小虾三级) | 2019-03-20 10:43

@地火水: 这个保存是怎么做呢?

沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 10:44

@沧海的雨季: 本地的话可以设置全局变量,可以放缓存。服务器的话你调个接口把json传给服务器就好了啊

地火水 | 园豆:1290 (小虾三级) | 2019-03-20 10:49

@地火水: 行吧,我找找看具体该如何做..

沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 10:51
其他回答(3)
0

小程序没有本地存储的东西吗

吴瑞祥 | 园豆:29449 (高人七级) | 2019-03-19 23:38

有啊 我试试缓存看行不行..

支持(0) 反对(0) 沧海的雨季 | 园豆:99 (初学一级) | 2019-03-19 23:39

不行啊 老哥...使用缓存之后第二次点击是可以显示上次加减结果了,但是再去加还是重新开始算..

支持(0) 反对(0) 沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 00:27
0

再次点击又是一次http请求,那有登录账号吗?如果么有,那客户端会认为这次点击和上次不是同一个人,我这样说有道理不,因为http请求是无状态的,要借助cookie和session,虽然我不会小程序,但是道理应该都差不多的

刘下来 | 园豆:919 (小虾三级) | 2019-03-20 08:32

我使用缓存了,第二次是是显示上次加减结果了,但是再次加减就有从0开始了

支持(0) 反对(0) 沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 10:26
0

你要加入一个清空机制啊 光想着加怎么行

丫的 | 园豆:1575 (小虾三级) | 2019-03-20 09:42

清空?

支持(0) 反对(0) 沧海的雨季 | 园豆:99 (初学一级) | 2019-03-20 10:24
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册