UNPKG

1.96 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.setMeta = undefined;
7
8var _rowUtil = require('./row-util');
9
10/**
11 *设置row中某一列的属性
12 */
13var setMeta = function setMeta(fieldName, key, value) {
14 var meta = (0, _rowUtil._getField)(this, fieldName).meta;
15 if (!meta) meta = (0, _rowUtil._getField)(this, fieldName).meta = {};
16 var oldValue = meta[key];
17 if ((0, _rowUtil.eq)(oldValue, value)) return;
18 meta[key] = value;
19 //this.metaChange(- this.metaChange())
20 if (this.metaChange[fieldName + '.' + key]) {
21 this.metaChange[fieldName + '.' + key](-this.metaChange[fieldName + '.' + key]());
22 }
23
24 if (key == 'enable') this.parent.enableChange(-this.parent.enableChange());
25 if (this.parent.getCurrentRow() == this) {
26 if (this.parent.metaChange[fieldName + '.' + key]) this.parent.metaChange[fieldName + '.' + key](-this.parent.metaChange[fieldName + '.' + key]());
27 this.parent.trigger(fieldName + '.' + key + '.' + DataTable.ON_CURRENT_META_CHANGE, {
28 eventType: 'dataTableEvent',
29 dataTable: this.parent.id,
30 oldValue: oldValue,
31 newValue: value
32 });
33 //this.parent.metaChange(- this.parent.metaChange())
34 }
35 this.parent.trigger(DataTable.ON_ROW_META_CHANGE, {
36 eventType: 'dataTableEvent',
37 dataTable: this.parent.id,
38 field: fieldName,
39 meta: key,
40 oldValue: oldValue,
41 newValue: value,
42 row: this
43 });
44
45 this.parent.trigger(fieldName + '.' + key + '.' + DataTable.ON_ROW_META_CHANGE, {
46 eventType: 'dataTableEvent',
47 dataTable: this.parent.id,
48 field: fieldName,
49 meta: key,
50 oldValue: oldValue,
51 newValue: value,
52 row: this
53 });
54}; /**
55 * Module : kero dataTable row meta
56 * Author : liuyk(liuyk@yonyou.com)
57 * Date : 2016-08-08 13:54:01
58 */
59exports.setMeta = setMeta;
\No newline at end of file