使用范围:WX
Contents
component TableData ($UI/wxsys/comps/tableData/tableData) extends Data
静态数据集
Constructor Top
TableData () | |||
TableData ( config) |
Properties Top
Agg |
agg
统计数据对象 | ||
Row |
current
当前行对象 | ||
Array<Row> |
value
所有行对象 |
Methods Top
number | avg (string column进行统计的列, function filterCallback) | |
Boolean | bof () | |
String | buildFilter () | |
string | col (string col) | |
Integer | count (Function filterCallback) | |
void | each (function callback) | |
Boolean | eof () | |
void | exchangeRow (Row row1, Row row2) | |
void | fieldsValue (Row row, Any options) | |
Array<Row> | find (Array fields, Array values, Boolean first, Boolean caseInsensitive, Boolean partialKey) | |
void | first () | |
String | getColumnIDs () | |
Integer | getCount () | |
Row | getCurrentRow () | |
String | getCurrentRowID () | |
String | getCurrentRowID () | |
String | getCurrentRowState () | |
String | getFilter (String name) | |
Row | getFirstRow () | |
String | getIdColumn () | |
Array |
getIDs () | |
Integer | getIndex (Row row) | |
Row | getLastRow () | |
Integer | getLimit () | |
Integer | getOffset () | |
Integer | getOrderBys (String relation) | |
Row | getRowByID (String rowid) | |
Any | getRowID (Any row) | |
Integer | getRowIndex () | |
Integer | getTotal () | |
Any | getValue (String col, Row row) | |
Any | getValueByID (String col, String rowid) | |
string | label (string col) | |
void | last () | |
number | max (string column进行统计的列, function filterCallback) | |
number | min (string column进行统计的列, function filterCallback) | |
void | next () | |
void | pre () | |
void | setFilter (String name, String filter) | |
void | setOrderBy (String relation, Integer type) | |
void | setTotal (Integer count) | |
void | setValue (String col, Any value, Row row) | |
void | setValueByID (String col, Any value, String rowid) | |
number | sum (string column进行统计的列, function filterCallback) | |
void | to (Row row) |
Operations Top
clear () | ||
void | delete (Any rows) | |
void | deleteAll (boolean force) | |
void | firstPage () | |
void | firstRow () | |
void | lastPage () | |
void | lastRow () | |
void | loadAllPage () | |
loadFromStorage (String key) | ||
void | loadNextPage () | |
void | loadPage (Integer pageIndex) | |
void | new (Array<Row> defaultValues, integer index) | |
void | nextPage () | |
void | nextRow () | |
void | prevPage () | |
void | prevRow () | |
void | refresh (boolean force) | |
removeStorage (String key) | ||
void | save () | |
saveToStorage (String key) |
Events Top
void | dataChange (DataChangeEvent event) | |
void | valueChanged (ValueChangedEvent event) |
Constructor details
Top
public
TableData
()
静态数据集
public
TableData
( config)
构造函数
Inherited from Operational
静态数据集
构造函数
Inherited from Operational
Properties Detail Top
统计数据对象
当前行对象
所有行对象
Methods Detail Top
public
number
avg
(string column进行统计的列, function filterCallback)
获取data中指定列的平均值,函数返回的是前端当前已经加载记录的平均值,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响
//统计mainData中年龄fAge平均值 var avg = this.comp('mainData').avg('fAge'); //统计mainData中fName姓“李”的年龄fAge平均值 var avg = this.comp('mainData').avg('fAge',function(ev){ let v = ev.row.fName; return v.indexOf('李')==0; });
public
Boolean
bof
()
当前是否第一行
public
String
buildFilter
()
生成返回过滤字符串
public
string
col
(string col)
返回列名,用于表达式中使用
public
Integer
count
(Function filterCallback)
获取data的记录数,函数返回的是前端当前已经加载的数据的记录数,不包含分页还没有加载到前端的数据
//统计mainData中记录数 var count = this.comp('mainData').count(); //统计mainData中fName姓“李”的记录数 var count = this.comp('mainData').count(function(ev){ let v = ev.row.fName; return v.indexOf('李')==0; });
public
void
each
(function callback)
遍历当前data的数据
var names = []; this.comp('mainData').each(function(param){ names.push(param.row.fName); });
public
Boolean
eof
()
当前是否最后行
行交换
多列赋值
public
Array<Row>
find
(Array fields, Array values, Boolean first, Boolean caseInsensitive, Boolean partialKey)
数据查找
根据列和值匹配进行数据查找,可以匹配多列//查找fName中包含"李"的提一条数据 var rows = this.comp('mainData').find(['fName'],['李'],true,true,true); if(rows.length==0) alert('没有符合条件数据'); //查找fName="李四",fAge=18的数据 var rows = this.comp('mainData').find(['fName','fAge'],['李',18]); if(rows.length==0) alert('没有符合条件数据');
public
void
first
()
移动到第一条
public
String
getColumnIDs
()
返回使用','分隔的data所有列名
public
Integer
getCount
()
获取data记录数
获取data当前的行
public
String
getCurrentRowID
()
获取data当前的行ID
public
String
getCurrentRowID
()
获取data当前的行ID
public
String
getCurrentRowState
()
获取data当前的行状态;分别对应new,edit,delete,none
public
String
getFilter
(String name)
返回指定名称的过滤表达式
获取data的第一行,没有数据时返回null
public
String
getIdColumn
()
获取主键列
public
Array
getIDs
()
获取data所有数据行Id
获取跨页序号
获取data的最后一行,没有数据时返回null
public
Integer
getLimit
()
返回data加载数据的页大小
public
Integer
getOffset
()
返回data加载数据的偏移量
public
Integer
getOrderBys
(String relation)
获取查询排序
根据行ID获取Row,函数会遍历所有数据,不要在循环中大量使用以免引发性能问题
public
Any
getRowID
(Any row)
获取data的行Id,默认获取当前行的id
public
Integer
getRowIndex
()
获取行索引
public
Integer
getTotal
()
返回data的全部记录数,包括分页没有加载的记录数
通过列名和行获取列的值
public
Any
getValueByID
(String col, String rowid)
通过列名和行ID获取列的值,函数会遍历所有数据,不要在循环中大量使用以免引发性能问题
public
string
label
(string col)
通过列名获取显示名称
public
void
last
()
移动到最后一条
public
number
max
(string column进行统计的列, function filterCallback)
获取data中指定列的最大值,函数返回的是前端当前已经加载记录的最大值,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响
//统计mainData中年龄fAge最大值 var min = this.comp('mainData').max('fAge'); //统计mainData中fName姓“李”的年龄fAge最大值 var avg = this.comp('mainData').max('fAge',function(ev){ let v = ev.row.fName; return v.indexOf('李')==0; });
public
number
min
(string column进行统计的列, function filterCallback)
获取data中指定列的最小值,函数返回的是前端当前已经加载记录的最小值,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响
//统计mainData中年龄fAge最小值 var min = this.comp('mainData').min('fAge'); //统计mainData中fName姓“李”的年龄fAge最小值 var avg = this.comp('mainData').min('fAge',function(ev){ let v = ev.row.fName; return v.indexOf('李')==0; });
public
void
next
()
移动到下一条
public
void
pre
()
移动到前一条
public
void
setFilter
(String name, String filter)
设置指定名称的过滤表达式,所有的过滤将按and连接
public
void
setOrderBy
(String relation, Integer type)
设置查询排序
public
void
setTotal
(Integer count)
设置全部记录数,包括分页没有加载的记录数
通过列名和行设置列的值
public
void
setValueByID
(String col, Any value, String rowid)
通过列名和行设置列的值,函数会遍历所有数据,不要在循环中大量使用以免引发性能问题
public
number
sum
(string column进行统计的列, function filterCallback)
获取data中指定列的合计,函数返回的是前端当前已经加载记录的合计,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响
//统计mainData中年龄fAge合计 var sum = this.comp('mainData').sum('fAge'); //统计mainData中fName姓“李”的年龄fAge合计 var sum = this.comp('mainData').sum('fAge',function(ev){ let v = ev.row.fName; return v.indexOf('李')==0; });
移动到指定行
Operations Detail Top
public
clear
()
清除数据,前端数据清除不影响数据库中数据
public
void
delete
(Any rows)
删除数据
See DeleteData
public
void
deleteAll
(boolean force)
删除全部数据
See DeleteData
public
void
firstPage
()
加载第一页数据
public
void
firstRow
()
将第一行设置为当前行
public
void
lastPage
()
加载最后一页数据
public
void
lastRow
()
将最后一行设置为当前行
public
void
loadAllPage
()
加载全部数据
public
loadFromStorage
(String key)
从localStorage加载数据
public
void
loadNextPage
()
加载下页数据,当设置limit有效,增量加载
public
void
loadPage
(Integer pageIndex)
刷新之后加载的是第一页数据,使用加载页直接加载指定页
在目标数据集中新增一条数据。插入位置设置为0,表示在最前面插入新数据
See NewData
public
void
nextPage
()
加载下一页数据,当设置limit有效
public
void
nextRow
()
将下一行设置为当前行
public
void
prevPage
()
加载上一页数据
public
void
prevRow
()
将上一行设置为当前行
public
void
refresh
(boolean force)
重新加载数据
See RefreshData
public
removeStorage
(String key)
删除localStorage中data的数据
public
void
save
()
保存数据
See SaveData
public
saveToStorage
(String key)
data数据存储到localStorage
Events Detail Top
[回调型事件]数据发生变化(包括新增、刷新、删除、修改引起的变化)
[回调型事件]数据变化后