UNPKG

1.65 kBJavaScriptView Raw
1/**
2 * Module : kero dataTable getMete
3 * Author : liuyk(liuyk@yonyou.com)
4 * Date : 2016-07-30 14:34:01
5 */
6
7
8/**
9 * 获取meta信息
10 * @memberof DataTable
11 * @param {string} [fieldName] 需要获取的字段
12 * @param {string} [key] 需要获取的字段指定meta信息
13 * @return {object} meta信息
14 * @example
15 * datatable.getMeta() // 获取所有meta信息
16 * datatable.getMeta('field1') // 获取field1所有meta信息
17 * datatable.getMeta('field1','type') // 获取field1的key信息
18 */
19const getMeta = function(fieldName, key) {
20 if (arguments.length === 0)
21 return this.meta;
22 else if (arguments.length === 1)
23 return this.meta[fieldName];
24
25 if (this.meta[fieldName] && typeof this.meta[fieldName][key] !== 'undefined') {
26 return this.meta[fieldName][key];
27 } else {
28 return null;
29 }
30
31}
32
33
34/**
35 * 获取当前行的meta信息,如果不存在当前行则获取DataTable的meta信息
36 * @memberof DataTable
37 * @param {string} [fieldName] 需要获取的字段
38 * @param {string} [key] 需要获取的字段指定meta信息
39 * @return {object} meta信息
40 * @example
41 * datatable.getRowMeta() // 获取当前行所有meta信息
42 * datatable.getRowMeta('field1') // 获取当前行field1所有meta信息
43 * datatable.getRowMeta('field1','type') // 获取当前行field1的key信息
44 */
45const getRowMeta = function(fieldName, key) {
46 var row = this.getCurrentRow()
47 if (row)
48 return row.getMeta(fieldName, key)
49 else
50 return this.getMeta(fieldName, key)
51}
52
53export const getMetaFunObj = {
54 getMeta: getMeta,
55 getRowMeta: getRowMeta
56}