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

QQ登录

只需一步,快速开始

查看: 3527|回复: 16

[结贴] 关于baasdata赋值给data

[复制链接]

10

主题

39

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
发表于 2016-12-29 11:46:39 | 显示全部楼层 |阅读模式
背景:界面有dataTable 绑定data数据
两个baastata获取数据赋值给data(因为显示在界面的数据需要从两个存储获取)
baasdata从后台获取到数据,我想赋值给data,有什么好的方法吗?
我想到是each循环赋值给data
发表于 2016-12-29 13:33:44 | 显示全部楼层
是的,就是循环赋值!
可以参考: http://docs.wex5.com/wex5-ui-question-list-2026/
不过,两个baasData  ,在循环其中一个的时候,另一个baasData 应该通过某个条件获取对应的行对象!可以通过 data.find方法查找出对应行!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

10

主题

39

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
 楼主| 发表于 2016-12-29 14:57:34 | 显示全部楼层
liangyongfei 发表于 2016-12-29 13:33
是的,就是循环赋值!
可以参考: http://docs.wex5.com/wex5-ui-question-list-2026/
不过,两个baasData  ...

如果想拷贝全部数据或多行数据
Model.prototype.dataCopy = function(destData,srcData){
    var data = [];
    srcData.each(function(param){
        var row = param.row.row;
        data.push(row);
    });
    destData.loadData(data);
}


我用这个添加到data里,怎么让datatable组件显示数据啊
打印了 data.count()是有值的
refreshData() 没效果
回复 支持 反对

使用道具 举报

发表于 2016-12-29 15:12:13 | 显示全部楼层
zeroone 发表于 2016-12-29 14:57
如果想拷贝全部数据或多行数据
Model.prototype.dataCopy = function(destData,srcData){
    var data = ...

应该是
var row = param.row;
你又多写了一个.row
首先,这两个data 字段必须有相同的才能加进去!如果字段都不一样,就加不进去的!

不要调用 refreshData ,这样就刷新了!加进去的值就没了~!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
发表于 2016-12-29 15:13:00 | 显示全部楼层
zeroone 发表于 2016-12-29 14:57
如果想拷贝全部数据或多行数据
Model.prototype.dataCopy = function(destData,srcData){
    var data = ...

字段要一致吧?
qq:7953899
回复 支持 反对

使用道具 举报

发表于 2016-12-29 15:20:41 | 显示全部楼层

一部分一致也是可以的!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

10

主题

39

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
 楼主| 发表于 2016-12-29 15:32:49 | 显示全部楼层
liangyongfei 发表于 2016-12-29 15:12
应该是
var row = param.row;
你又多写了一个.row

有相同的字段,多了一个row,是你提供的连接上面 官方文档上面也是多了.row, 我晕
                var InfobaasData = this.comp('InfobaasData');
                var detailsData = this.comp('detailsData');
            var data = [];
            InfobaasData.each(function(param){
                var row = param.row;
                data.push(row);
            });
                detailsData.loadData(data);

这样还是没显示数据哦

回复 支持 反对

使用道具 举报

发表于 2016-12-29 15:36:18 | 显示全部楼层
zeroone 发表于 2016-12-29 15:32
有相同的字段,多了一个row,是你提供的连接上面 官方文档上面也是多了.row, 我晕
                var InfobaasData = th ...

detailsData 的 ID 列有值吧??
文档 就是这个,你自己debugger调试看下!得到的数组中是否有值!loadData 后 data.count() 是多少??按理说应该和 数组的长度一样的!表示有几行数据
X[SC_Q@C]$$K%4S(UY}KVR8.png
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

10

主题

39

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
 楼主| 发表于 2016-12-29 16:12:06 | 显示全部楼层
liangyongfei 发表于 2016-12-29 15:36
detailsData 的 ID 列有值吧??
文档 就是这个,你自己debugger调试看下!得到的数组中是 ...

data有数据了,调试看的到数据
现在data和dataTable绑定了,为什么界面不显示数据,啥反应都没
回复 支持 反对

使用道具 举报

发表于 2016-12-29 16:26:11 | 显示全部楼层
zeroone 发表于 2016-12-29 16:12
data有数据了,调试看的到数据
现在data和dataTable绑定了,为什么界面不显示数据,啥反应都没 ...

试试其他组件绑定这个data可以显示吗??
会不会没切换到指定行?
http://docs.wex5.com/wex5-ui-question-list-2071
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 06:00 , Processed in 0.075787 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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