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

QQ登录

只需一步,快速开始

查看: 6135|回复: 7

[结贴] 为什么getAggregateValue在bind-text里不起作用呢?????

[复制链接]

851

主题

2560

帖子

5714

积分

论坛元老

Rank: 8Rank: 8

积分
5714
QQ
发表于 2017-1-7 22:09:15 | 显示全部楼层 |阅读模式
为什么getAggregateValue在这里不起作用呢?????
QQ截图20170107220844.png
企业应用定制开发。X5开发者。
手机:15065117236
QQ:87356667

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2017-1-9 11:15:29 | 显示全部楼层
确认queryAction定义的正确吗?

http://docs.wex5.com/data2/
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

851

主题

2560

帖子

5714

积分

论坛元老

Rank: 8Rank: 8

积分
5714
QQ
 楼主| 发表于 2017-1-9 11:45:49 | 显示全部楼层
jishuang 发表于 2017-1-9 11:15
确认queryAction定义的正确吗?

http://docs.wex5.com/data2/

是的,我确定。sum出来的值都可以拿到的。我现在的做法是又加了一个CDATA。mainData refresh后,对cData进行赋值。把CData绑定在了展示组件上。可是这种方法太low了。。。。。我觉得展示组件的bind-text是可以直接写表达式的(mainData.getAggregateValue("price"))。可我怎么试都不行。郁闷了。
企业应用定制开发。X5开发者。
手机:15065117236
QQ:87356667
回复 支持 反对

使用道具 举报

851

主题

2560

帖子

5714

积分

论坛元老

Rank: 8Rank: 8

积分
5714
QQ
 楼主| 发表于 2017-1-9 13:28:14 | 显示全部楼层
jishuang 发表于 2017-1-9 11:15
确认queryAction定义的正确吗?

http://docs.wex5.com/data2/

我这里就是不显示啊!!!mainDataRefreshAfter事件里可以正常拿到什的,为什么绑定到这里页面不显示呢??页面里是空的,什么都没有。
QQ截图20170109132734.png
企业应用定制开发。X5开发者。
手机:15065117236
QQ:87356667
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2017-1-9 14:45:21 | 显示全部楼层
定义一个js函数,在函数中获取,返回,bind-text调用函数看看是否能获取到
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

851

主题

2560

帖子

5714

积分

论坛元老

Rank: 8Rank: 8

积分
5714
QQ
 楼主| 发表于 2017-1-9 16:11:26 | 显示全部楼层
本帖最后由 wgs7909 于 2017-1-9 16:21 编辑
jishuang 发表于 2017-1-9 14:45
定义一个js函数,在函数中获取,返回,bind-text调用函数看看是否能获取到

按你的提示,我写了一个函数。但是没有效果,DEBUGGER跟踪了一下,发现页面初始化的时候,先调用了自定义函数(感觉是页面渲染的时候就先执行了$model.mainData.getAggregateValue("*****")),这里data组件的数据还没有加载上来,所以什么都不显示就对了。dataRefresh后又不会刺激到data.getAggregateValue()。所以bind-text这里一直就是空的了。
今天研究了一天这个问题,现在终于可以得出一个结论。bind-text的值只有是data.val()或是data.ref()的时候,才有数据感知的能力。而getAggregateValue()这个方法是被动的,没有数据感知的能力,所以加一个临时cData,bind-text指向CData,mainData在refreshAfter事件里对CData重新赋值,只有这样,才能bind-text组件的值在mainDataRefresh后得到及时的更新。


企业应用定制开发。X5开发者。
手机:15065117236
QQ:87356667
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2017-1-9 16:40:20 | 显示全部楼层
getAggregateValue()是Data组件刷新时返回后端统计结果的,没有刷新加载是获取不到的
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

851

主题

2560

帖子

5714

积分

论坛元老

Rank: 8Rank: 8

积分
5714
QQ
 楼主| 发表于 2021-6-6 20:17:22 | 显示全部楼层
对于之前疑惑的重新说明。
bind-****属性中,只有使用了可观察者对象时,对象值的变化,才能即时反映到页面上。
可观察者对象,请参照WeX5之数据绑定系列
企业应用定制开发。X5开发者。
手机:15065117236
QQ:87356667
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 03:34 , Processed in 0.062290 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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