起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2380|回复: 15

[结贴] 关于商品明细页上的商品信息的更新问题

[复制链接]

16

主题

53

帖子

179

积分

初级会员

Rank: 2

积分
179
QQ
发表于 2016-8-10 17:49:53 | 显示全部楼层 |阅读模式
老师好,
       仿淘宝案例中, 在main.w页面点[猜你喜欢]的任一商品, 在detail.w没有刷新读JSON文件方式, 即数据没有变化. 现要用数据库的方式来刷新detail.w中的商品信息, 请问如何修改goodsDataCustomRefresh()函数???
help.jpg

0

主题

1639

帖子

497

积分

中级会员

Rank: 3Rank: 3

积分
497
QQ
发表于 2016-8-10 18:13:44 | 显示全部楼层
你现在用的是baasData吗?如果是的话,可以通过setFilter来过滤数据。setFilter方法有提示,可以按着提示来进行数据筛选
回复我的时候请点击我当前评论旁边的回复按钮,能保证第一时间看到您的回复,在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

发表于 2016-8-11 10:31:16 | 显示全部楼层
请问你的goodsData 组件还是data组件,而不是baasData组件吧!
可以通过Baas.sendRequest 方法调用后面的自定义action  ,在成功回调的方法中,把后台获取的数据放在data组件中

如果是baasData组件!,只需要设置过滤条件并执行刷新即可!但是不能写在onCustomRefresh事件中!因为每次刷新都会调用这个事件!就导致死循环了!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

16

主题

53

帖子

179

积分

初级会员

Rank: 2

积分
179
QQ
 楼主| 发表于 2016-8-11 17:30:18 | 显示全部楼层
我是要改成用baasData组件, 原来用data组件的几乎要去掉
回复 支持 反对

使用道具 举报

16

主题

53

帖子

179

积分

初级会员

Rank: 2

积分
179
QQ
 楼主| 发表于 2016-8-11 17:33:20 | 显示全部楼层
用baasData组件, 请问main.w 中的goodsData(baasData组件)和detail.w中的goodsData(baasData组件)能共用一个么?
回复 支持 反对

使用道具 举报

16

主题

53

帖子

179

积分

初级会员

Rank: 2

积分
179
QQ
 楼主| 发表于 2016-8-12 09:14:26 | 显示全部楼层
1)我这样修改没有反应, 又找不到资料.
2)模型goodsDb的属性autoLoad改成true和false 都不出结果
烦请指点.
help2.jpg
help3.jpg
回复 支持 反对

使用道具 举报

发表于 2016-8-12 11:22:06 | 显示全部楼层
sanco 发表于 2016-8-12 09:14
1)我这样修改没有反应, 又找不到资料.
2)模型goodsDb的属性autoLoad改成true和false 都不出结果
烦请指点.

过滤,一般请情况是设置的setFilter 方法!
http://docs.wex5.com/wex5-server-question-list-2006/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

16

主题

53

帖子

179

积分

初级会员

Rank: 2

积分
179
QQ
 楼主| 发表于 2016-8-15 15:51:57 | 显示全部楼层
在detail.w页面的如下代码:
        var Model = function() {
                this.callParent();
                this.goodsId="";
                this.shopId="";
        };

        //接收
        Model.prototype.modelParamsReceive = function(event){
                /*
                1、参数接收事件
                2、根据参数从服务端过滤数据
                */
                if (this.params && this.params.shopId) {
                        this.shopId = this.params.shopId;
                        this.goodsId = this.params.goodsId;
                }
        };       

        //获取轮换图片
        Model.prototype.imgDataCustomRefresh = function(event){
                /*
                1、加载轮换图片数据
                2、根据goodsID过滤数据
                3、修改对应图片的src
                */
                此处取的this.goodsId为空???? 请问老师什么原因
                后端自定义查询数据库的服务, 使用justep.Baas.sendRequest


        }

        //获取商品信息
        Model.prototype.goodsDataCustomRefresh = function(event){
                /*
                1、加载商品数据
                2、根据goodsID过滤数据
                */
                此处取的this.goodsId为空???? 请问老师什么原因
                后端自定义查询数据库的服务, 使用justep.Baas.sendRequest

        };
回复 支持 反对

使用道具 举报

16

主题

53

帖子

179

积分

初级会员

Rank: 2

积分
179
QQ
 楼主| 发表于 2016-8-15 15:52:45 | 显示全部楼层
请老师帮忙分析 粗字体的问题
回复 支持 反对

使用道具 举报

发表于 2016-8-15 17:12:18 | 显示全部楼层
sanco 发表于 2016-8-15 15:52
请老师帮忙分析 粗字体的问题

你的data组件 或者list 组件的autoLoad是不是设置为true !这样会优先执行data组件的刷新的!!这个时候还没赋值
建议autoLoad 都设置为false!然后再modelParamsReceive  中使用代码调用data.refreshData()  刷新 !这样就可以获取值了!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-9-28 09:33 , Processed in 0.071013 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表