vxe-table 3.4.14-beta.2 → 3.5.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/README.md +2 -6
  2. package/lib/button/src/button.js +19 -9
  3. package/lib/button/src/button.min.js +1 -1
  4. package/lib/checkbox/src/checkbox.js +2 -2
  5. package/lib/checkbox/src/checkbox.min.js +1 -1
  6. package/lib/edit/src/mixin.js +26 -18
  7. package/lib/edit/src/mixin.min.js +1 -1
  8. package/lib/export/src/export-panel.js +2 -2
  9. package/lib/export/src/export-panel.min.js +1 -1
  10. package/lib/export/src/import-panel.js +2 -2
  11. package/lib/export/src/import-panel.min.js +1 -1
  12. package/lib/export/src/mixin.js +26 -24
  13. package/lib/export/src/mixin.min.js +1 -1
  14. package/lib/filter/src/mixin.js +28 -21
  15. package/lib/filter/src/mixin.min.js +1 -1
  16. package/lib/filter/src/panel.js +2 -2
  17. package/lib/filter/src/panel.min.js +1 -1
  18. package/lib/footer/src/footer.js +7 -4
  19. package/lib/footer/src/footer.min.js +1 -1
  20. package/lib/form/src/form-gather.js +2 -2
  21. package/lib/form/src/form-gather.min.js +1 -1
  22. package/lib/form/src/form-item.js +8 -3
  23. package/lib/form/src/form-item.min.js +1 -1
  24. package/lib/form/src/form.js +48 -38
  25. package/lib/form/src/form.min.js +1 -1
  26. package/lib/form/src/render.js +5 -5
  27. package/lib/form/src/render.min.js +1 -1
  28. package/lib/form/src/util.js +13 -2
  29. package/lib/form/src/util.min.js +1 -1
  30. package/lib/grid/src/grid.js +44 -34
  31. package/lib/grid/src/grid.min.js +1 -1
  32. package/lib/header/src/header.js +10 -8
  33. package/lib/header/src/header.min.js +1 -1
  34. package/lib/index.umd.js +2322 -2170
  35. package/lib/index.umd.min.js +1 -2
  36. package/lib/input/src/input.js +30 -18
  37. package/lib/input/src/input.min.js +1 -1
  38. package/lib/keyboard/src/mixin.js +12 -8
  39. package/lib/keyboard/src/mixin.min.js +1 -1
  40. package/lib/list/src/list.js +7 -5
  41. package/lib/list/src/list.min.js +1 -1
  42. package/lib/menu/src/mixin.js +24 -14
  43. package/lib/menu/src/mixin.min.js +1 -1
  44. package/lib/menu/src/panel.js +3 -3
  45. package/lib/menu/src/panel.min.js +1 -1
  46. package/lib/modal/src/modal.js +24 -12
  47. package/lib/modal/src/modal.min.js +1 -1
  48. package/lib/pulldown/src/pulldown.js +16 -12
  49. package/lib/pulldown/src/pulldown.min.js +1 -1
  50. package/lib/radio/src/button.js +2 -2
  51. package/lib/radio/src/button.min.js +1 -1
  52. package/lib/radio/src/radio.js +2 -2
  53. package/lib/radio/src/radio.min.js +1 -1
  54. package/lib/select/src/select.js +26 -16
  55. package/lib/select/src/select.min.js +1 -1
  56. package/lib/switch/src/switch.js +4 -4
  57. package/lib/switch/src/switch.min.js +1 -1
  58. package/lib/table/src/body.js +46 -22
  59. package/lib/table/src/body.min.js +1 -1
  60. package/lib/table/src/cell.js +19 -11
  61. package/lib/table/src/cell.min.js +1 -1
  62. package/lib/table/src/column.js +3 -3
  63. package/lib/table/src/column.min.js +1 -1
  64. package/lib/table/src/columnInfo.js +201 -0
  65. package/lib/table/src/columnInfo.min.js +1 -0
  66. package/lib/table/src/methods.js +339 -307
  67. package/lib/table/src/methods.min.js +1 -1
  68. package/lib/table/src/table.js +80 -62
  69. package/lib/table/src/table.min.js +1 -1
  70. package/lib/table/src/util.js +38 -3
  71. package/lib/table/src/util.min.js +1 -1
  72. package/lib/textarea/src/textarea.js +2 -2
  73. package/lib/textarea/src/textarea.min.js +1 -1
  74. package/lib/toolbar/src/toolbar.js +16 -10
  75. package/lib/toolbar/src/toolbar.min.js +1 -1
  76. package/lib/tools/{src/dom.js → dom.js} +12 -1
  77. package/lib/tools/dom.min.js +1 -0
  78. package/lib/tools/{src/event.js → event.js} +3 -6
  79. package/lib/tools/event.min.js +1 -0
  80. package/lib/tools/log.js +29 -0
  81. package/lib/tools/log.min.js +1 -0
  82. package/lib/tools/{src/resize.js → resize.js} +1 -1
  83. package/lib/tools/resize.min.js +1 -0
  84. package/lib/tools/utils.js +155 -0
  85. package/lib/tools/utils.min.js +1 -0
  86. package/lib/tooltip/src/tooltip.js +89 -50
  87. package/lib/tooltip/src/tooltip.min.js +1 -1
  88. package/lib/v-x-e-table/index.js +7 -4
  89. package/lib/v-x-e-table/index.min.js +1 -1
  90. package/lib/v-x-e-table/src/conf.js +4 -1
  91. package/lib/v-x-e-table/src/conf.min.js +1 -1
  92. package/lib/v-x-e-table/src/interceptor.js +4 -4
  93. package/lib/v-x-e-table/src/interceptor.min.js +1 -1
  94. package/lib/v-x-e-table/src/renderer.js +18 -10
  95. package/lib/v-x-e-table/src/renderer.min.js +1 -1
  96. package/lib/v-x-e-table/src/store.js +3 -3
  97. package/lib/v-x-e-table/src/store.min.js +1 -1
  98. package/lib/validator/src/mixin.js +4 -4
  99. package/lib/validator/src/mixin.min.js +1 -1
  100. package/package.json +3 -3
  101. package/packages/button/src/button.js +4 -2
  102. package/packages/checkbox/src/checkbox.js +2 -2
  103. package/packages/edit/src/mixin.js +7 -6
  104. package/packages/export/src/export-panel.js +1 -1
  105. package/packages/export/src/import-panel.js +1 -1
  106. package/packages/export/src/mixin.js +20 -19
  107. package/packages/filter/src/mixin.js +18 -14
  108. package/packages/filter/src/panel.js +1 -1
  109. package/packages/footer/src/footer.js +4 -2
  110. package/packages/form/src/form-gather.js +2 -2
  111. package/packages/form/src/form-item.js +7 -2
  112. package/packages/form/src/form.js +29 -23
  113. package/packages/form/src/render.js +4 -4
  114. package/packages/form/src/util.js +9 -2
  115. package/packages/grid/src/grid.js +22 -20
  116. package/packages/header/src/header.js +3 -2
  117. package/packages/input/src/input.js +6 -3
  118. package/packages/keyboard/src/mixin.js +1 -2
  119. package/packages/list/src/list.js +3 -2
  120. package/packages/menu/src/mixin.js +5 -3
  121. package/packages/menu/src/panel.js +3 -3
  122. package/packages/modal/src/modal.js +7 -4
  123. package/packages/pulldown/src/pulldown.js +3 -1
  124. package/packages/radio/src/button.js +2 -2
  125. package/packages/radio/src/radio.js +2 -2
  126. package/packages/select/src/select.js +5 -3
  127. package/packages/switch/src/switch.js +4 -4
  128. package/packages/table/src/body.js +36 -17
  129. package/packages/table/src/cell.js +5 -4
  130. package/packages/table/src/column.js +1 -1
  131. package/packages/table/src/columnInfo.js +148 -0
  132. package/packages/table/src/methods.js +100 -75
  133. package/packages/table/src/table.js +56 -41
  134. package/packages/table/src/util.js +19 -1
  135. package/packages/textarea/src/textarea.js +2 -2
  136. package/packages/toolbar/src/toolbar.js +7 -4
  137. package/packages/tools/{src/dom.js → dom.js} +13 -1
  138. package/packages/tools/{src/event.js → event.js} +1 -3
  139. package/packages/tools/log.js +16 -0
  140. package/packages/tools/{src/resize.js → resize.js} +1 -1
  141. package/packages/tools/utils.js +108 -0
  142. package/packages/tooltip/src/tooltip.js +49 -24
  143. package/packages/v-x-e-table/index.js +4 -2
  144. package/packages/v-x-e-table/src/conf.js +4 -1
  145. package/packages/v-x-e-table/src/interceptor.js +3 -3
  146. package/packages/v-x-e-table/src/renderer.js +4 -3
  147. package/packages/v-x-e-table/src/store.js +2 -2
  148. package/packages/validator/src/mixin.js +3 -3
  149. package/types/v-x-e-table/index.d.ts +8 -0
  150. package/README.en.md +0 -170
  151. package/README.zh-TW.md +0 -174
  152. package/lib/tools/index.js +0 -76
  153. package/lib/tools/index.min.js +0 -1
  154. package/lib/tools/src/dom.min.js +0 -1
  155. package/lib/tools/src/event.min.js +0 -1
  156. package/lib/tools/src/resize.min.js +0 -1
  157. package/lib/tools/src/utils.js +0 -365
  158. package/lib/tools/src/utils.min.js +0 -1
  159. package/packages/tools/index.js +0 -14
  160. package/packages/tools/src/utils.js +0 -272
@@ -5,10 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
- var _tools = require("../../tools");
9
-
10
8
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
11
9
 
10
+ var _log = require("../../tools/log");
11
+
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13
 
14
14
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -44,7 +44,7 @@ var Store = /*#__PURE__*/function () {
44
44
  // 检测是否覆盖
45
45
  if (process.env.NODE_ENV === 'development') {
46
46
  if (!_xeUtils.default.eqNull(this.store[name]) && this.store[name] !== render) {
47
- _tools.UtilTools.warn('vxe.error.coverProp', [this._name, name]);
47
+ (0, _log.warnLog)('vxe.error.coverProp', [this._name, name]);
48
48
  }
49
49
  }
50
50
 
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _tools=require("../../tools"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var Store=function(){function r(){_classCallCheck(this,r),this.store={}}return _createClass(r,[{key:"mixin",value:function(e){return Object.assign(this.store,e),r}},{key:"get",value:function(e){return this.store[e]}},{key:"add",value:function(e,t){return"development"===process.env.NODE_ENV&&(_xeUtils.default.eqNull(this.store[e])||this.store[e]===t||_tools.UtilTools.warn("vxe.error.coverProp",[this._name,e])),this.store[e]=t,r}},{key:"delete",value:function(e){return delete this.store[e],r}}]),r}(),_default=Store;exports.default=_default;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_log=require("../../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var Store=function(){function r(){_classCallCheck(this,r),this.store={}}return _createClass(r,[{key:"mixin",value:function(e){return Object.assign(this.store,e),r}},{key:"get",value:function(e){return this.store[e]}},{key:"add",value:function(e,t){return"development"===process.env.NODE_ENV&&(_xeUtils.default.eqNull(this.store[e])||this.store[e]===t||(0,_log.warnLog)("vxe.error.coverProp",[this._name,e])),this.store[e]=t,r}},{key:"delete",value:function(e){return delete this.store[e],r}}]),r}(),_default=Store;exports.default=_default;
@@ -9,9 +9,9 @@ var _xeUtils = _interopRequireDefault(require("xe-utils"));
9
9
 
10
10
  var _conf = _interopRequireDefault(require("../../v-x-e-table/src/conf"));
11
11
 
12
- var _tools = require("../../tools");
12
+ var _utils = require("../../tools/utils");
13
13
 
14
- var _utils = require("../../tools/src/utils");
14
+ var _dom = _interopRequireDefault(require("../../tools/dom"));
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
 
@@ -49,7 +49,7 @@ var Rule = /*#__PURE__*/function () {
49
49
  _createClass(Rule, [{
50
50
  key: "content",
51
51
  get: function get() {
52
- return _tools.UtilTools.getFuncText(this.$options.content || this.$options.message);
52
+ return (0, _utils.getFuncText)(this.$options.content || this.$options.message);
53
53
  }
54
54
  }, {
55
55
  key: "message",
@@ -247,7 +247,7 @@ var _default = {
247
247
  var posAndFinish = function posAndFinish() {
248
248
  firstErrParams.cell = _this2.getCell(firstErrParams.row, firstErrParams.column);
249
249
 
250
- _tools.DomTools.scrollToView(firstErrParams.cell);
250
+ _dom.default.scrollToView(firstErrParams.cell);
251
251
 
252
252
  _this2.handleValidError(firstErrParams).then(finish);
253
253
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_tools=require("../../tools"),_utils=require("../../tools/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var l=t[r];l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l&&(l.writable=!0),Object.defineProperty(e,l.key,l)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var Rule=function(){function t(e){_classCallCheck(this,t),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}return _createClass(t,[{key:"content",get:function(){return _tools.UtilTools.getFuncText(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]),t}();function validErrorRuleValue(e,t){var r=e.type,l=e.min,i=e.max,n=e.pattern,e="number"===r,r=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(l)&&r<_xeUtils.default.toNumber(l)||(!_xeUtils.default.eqNull(i)&&r>_xeUtils.default.toNumber(i)||!(!n||(_xeUtils.default.isRegExp(n)?n:new RegExp(n)).test(t))))}var _default={methods:{_fullValidate:function(e,t){return this.beginValidate(e,t,!0)},_validate:function(e,t){return this.beginValidate(e,t)},handleValidError:function(t){var r=this;return new Promise(function(e){!1===r.validOpts.autoPos?(r.emitEvent("valid-error",t),e()):r.handleActived(t,{type:"valid-error",trigger:"call"}).then(function(){setTimeout(function(){e(r.showValidTooltip(t))},10)})})},beginValidate:function(e,u,l){var a=this,s={},i=this.editRules,c=this.afterFullData,d=this.treeConfig,t=this.treeOpts;!0===e?r=c:e&&(_xeUtils.default.isFunction(e)?u=e:r=_xeUtils.default.isArray(e)?e:[e]);var r=r||this.getInsertRecords().concat(this.getUpdateRecords()),n=[];if(this.lastCallTime=Date.now(),this.validRuleErr=!1,this.clearValidate(),i){var o=this.getColumns(),e=function(r){var e;!l&&a.validRuleErr||(e=[],o.forEach(function(t){!l&&a.validRuleErr||!_xeUtils.default.has(i,t.property)||e.push(a.validCellRules("all",r,t).catch(function(e){e={rule:e.rule,rules:e.rules,rowIndex:a.getRowIndex(r),row:r,columnIndex:a.getColumnIndex(t),column:t,field:t.property,$table:a};if(s[t.property]||(s[t.property]=[]),s[t.property].push(e),!l)return a.validRuleErr=!0,Promise.reject(e)}))}),n.push(Promise.all(e)))};return d?_xeUtils.default.eachTree(r,e,t):r.forEach(e),Promise.all(n).then(function(){var e=Object.keys(s);return a.$nextTick().then(function(){return e.length?Promise.reject(s[e[0]][0]):void(u&&u())})}).catch(function(o){return new Promise(function(e,t){function r(){a.$nextTick(function(){u?(u(s),e()):("obsolete"===_conf.default.validToReject?t:e)(s)})}function l(){o.cell=a.getCell(o.row,o.column),_tools.DomTools.scrollToView(o.cell),a.handleValidError(o).then(r)}var i=o.row,n=c.indexOf(i),i=0<n?c[n-1]:i;!1===a.validOpts.autoPos?r():(d?a.scrollToTreeRow(i):a.scrollToRow(i)).then(l)})})}return this.$nextTick().then(function(){u&&u()})},hasCellRules:function(t,e,r){var l=this.editRules,r=r.property;if(r&&l){r=_xeUtils.default.get(l,r);return r&&_xeUtils.default.find(r,function(e){return"all"===t||!e.trigger||t===e.trigger})}return!1},validCellRules:function(n,o,u,e){var a,s,c=this,t=this.editRules,r=u.property,d=[],f=[];return r&&t&&((a=_xeUtils.default.get(t,r))&&(s=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(o,r):e,a.forEach(function(t){var e,r=t.type,l=t.trigger,i=t.required;"all"!==n&&l&&n!==l||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({cellValue:s,rule:t,rules:a,row:o,rowIndex:c.getRowIndex(o),column:u,columnIndex:c.getColumnIndex(u),field:u.property,$table:c}))&&(_xeUtils.default.isError(e)?(c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:l,content:e.message,rule:new Rule(t)}))):e.catch&&f.push(e.catch(function(e){c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:l,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))}))):(r="array"===r?!_xeUtils.default.isArray(s)||!s.length:(0,_utils.eqEmptyValue)(s),(i?r||validErrorRuleValue(t,s):!r&&validErrorRuleValue(t,s))&&(c.validRuleErr=!0,d.push(new Rule(t)))))}))),Promise.all(f).then(function(){if(d.length){var e={rules:d,rule:d[0]};return Promise.reject(e)}})},_clearValidate:function(){var e=this.$refs.validTip;return Object.assign(this.validStore,{visible:!1,row:null,column:null,content:"",rule:null}),e&&e.visible&&e.close(),this.$nextTick()},triggerValidate:function(t){var r=this,e=this.editConfig,l=this.editStore,i=this.editRules,n=this.validStore,l=l.actived;if(l.row&&i){var l=l.args,o=l.row,u=l.column,a=l.cell;if(this.hasCellRules(t,o,u))return this.validCellRules(t,o,u).then(function(){"row"===e.mode&&n.visible&&n.row===o&&n.column===u&&r.clearValidate()}).catch(function(e){e=e.rule;if(e.trigger&&t!==e.trigger)return Promise.resolve();e={rule:e,row:o,column:u,cell:a};return r.showValidTooltip(e),Promise.reject(e)})}return Promise.resolve()},showValidTooltip:function(e){var t=this,r=this.$refs,l=this.height,i=this.tableData,n=this.validOpts,o=e.rule,u=e.row,a=e.column,s=e.cell,c=r.validTip,d=o.content;return this.$nextTick(function(){if(Object.assign(t.validStore,{row:u,column:a,rule:o,content:d,visible:!0}),t.emitEvent("valid-error",e),c&&("tooltip"===n.message||"default"===n.message&&!l&&i.length<2))return c.open(s,d)})}}};exports.default=_default;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_utils=require("../../tools/utils"),_dom=_interopRequireDefault(require("../../tools/dom"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var Rule=function(){function t(e){_classCallCheck(this,t),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}return _createClass(t,[{key:"content",get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]),t}();function validErrorRuleValue(e,t){var r=e.type,i=e.min,l=e.max,n=e.pattern,e="number"===r,r=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(i)&&r<_xeUtils.default.toNumber(i)||(!_xeUtils.default.eqNull(l)&&r>_xeUtils.default.toNumber(l)||!(!n||(_xeUtils.default.isRegExp(n)?n:new RegExp(n)).test(t))))}var _default={methods:{_fullValidate:function(e,t){return this.beginValidate(e,t,!0)},_validate:function(e,t){return this.beginValidate(e,t)},handleValidError:function(t){var r=this;return new Promise(function(e){!1===r.validOpts.autoPos?(r.emitEvent("valid-error",t),e()):r.handleActived(t,{type:"valid-error",trigger:"call"}).then(function(){setTimeout(function(){e(r.showValidTooltip(t))},10)})})},beginValidate:function(e,o,i){var a=this,s={},l=this.editRules,c=this.afterFullData,d=this.treeConfig,t=this.treeOpts;!0===e?r=c:e&&(_xeUtils.default.isFunction(e)?o=e:r=_xeUtils.default.isArray(e)?e:[e]);var r=r||this.getInsertRecords().concat(this.getUpdateRecords()),n=[];if(this.lastCallTime=Date.now(),this.validRuleErr=!1,this.clearValidate(),l){var u=this.getColumns(),e=function(r){var e;!i&&a.validRuleErr||(e=[],u.forEach(function(t){!i&&a.validRuleErr||!_xeUtils.default.has(l,t.property)||e.push(a.validCellRules("all",r,t).catch(function(e){e={rule:e.rule,rules:e.rules,rowIndex:a.getRowIndex(r),row:r,columnIndex:a.getColumnIndex(t),column:t,field:t.property,$table:a};if(s[t.property]||(s[t.property]=[]),s[t.property].push(e),!i)return a.validRuleErr=!0,Promise.reject(e)}))}),n.push(Promise.all(e)))};return d?_xeUtils.default.eachTree(r,e,t):r.forEach(e),Promise.all(n).then(function(){var e=Object.keys(s);return a.$nextTick().then(function(){return e.length?Promise.reject(s[e[0]][0]):void(o&&o())})}).catch(function(u){return new Promise(function(e,t){function r(){a.$nextTick(function(){o?(o(s),e()):("obsolete"===_conf.default.validToReject?t:e)(s)})}function i(){u.cell=a.getCell(u.row,u.column),_dom.default.scrollToView(u.cell),a.handleValidError(u).then(r)}var l=u.row,n=c.indexOf(l),l=0<n?c[n-1]:l;!1===a.validOpts.autoPos?r():(d?a.scrollToTreeRow(l):a.scrollToRow(l)).then(i)})})}return this.$nextTick().then(function(){o&&o()})},hasCellRules:function(t,e,r){var i=this.editRules,r=r.property;if(r&&i){r=_xeUtils.default.get(i,r);return r&&_xeUtils.default.find(r,function(e){return"all"===t||!e.trigger||t===e.trigger})}return!1},validCellRules:function(n,u,o,e){var a,s,c=this,t=this.editRules,r=o.property,d=[],f=[];return r&&t&&((a=_xeUtils.default.get(t,r))&&(s=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(u,r):e,a.forEach(function(t){var e,r=t.type,i=t.trigger,l=t.required;"all"!==n&&i&&n!==i||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({cellValue:s,rule:t,rules:a,row:u,rowIndex:c.getRowIndex(u),column:o,columnIndex:c.getColumnIndex(o),field:o.property,$table:c}))&&(_xeUtils.default.isError(e)?(c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:i,content:e.message,rule:new Rule(t)}))):e.catch&&f.push(e.catch(function(e){c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:i,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))}))):(r="array"===r?!_xeUtils.default.isArray(s)||!s.length:(0,_utils.eqEmptyValue)(s),(l?r||validErrorRuleValue(t,s):!r&&validErrorRuleValue(t,s))&&(c.validRuleErr=!0,d.push(new Rule(t)))))}))),Promise.all(f).then(function(){if(d.length){var e={rules:d,rule:d[0]};return Promise.reject(e)}})},_clearValidate:function(){var e=this.$refs.validTip;return Object.assign(this.validStore,{visible:!1,row:null,column:null,content:"",rule:null}),e&&e.visible&&e.close(),this.$nextTick()},triggerValidate:function(t){var r=this,e=this.editConfig,i=this.editStore,l=this.editRules,n=this.validStore,i=i.actived;if(i.row&&l){var i=i.args,u=i.row,o=i.column,a=i.cell;if(this.hasCellRules(t,u,o))return this.validCellRules(t,u,o).then(function(){"row"===e.mode&&n.visible&&n.row===u&&n.column===o&&r.clearValidate()}).catch(function(e){e=e.rule;if(e.trigger&&t!==e.trigger)return Promise.resolve();e={rule:e,row:u,column:o,cell:a};return r.showValidTooltip(e),Promise.reject(e)})}return Promise.resolve()},showValidTooltip:function(e){var t=this,r=this.$refs,i=this.height,l=this.tableData,n=this.validOpts,u=e.rule,o=e.row,a=e.column,s=e.cell,c=r.validTip,d=u.content;return this.$nextTick(function(){if(Object.assign(t.validStore,{row:o,column:a,rule:u,content:d,visible:!0}),t.emitEvent("valid-error",e),c&&("tooltip"===n.message||"default"===n.message&&!i&&l.length<2))return c.open(s,d)})}}};exports.default=_default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-table",
3
- "version": "3.4.14-beta.2",
3
+ "version": "3.5.0-beta.0",
4
4
  "description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、贼灵活的配置项、扩展接口等...",
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve",
@@ -66,11 +66,11 @@
66
66
  "vuex": "^3.4.0",
67
67
  "xe-ajax": "^4.0.5",
68
68
  "xe-clipboard": "^1.10.1",
69
- "xe-utils": "^3.5.2"
69
+ "xe-utils": "^3.5.4"
70
70
  },
71
71
  "peerDependencies": {
72
72
  "vue": "^2.6.0",
73
- "xe-utils": "^3.5.2"
73
+ "xe-utils": "^3.5.0"
74
74
  },
75
75
  "vetur": {
76
76
  "tags": "helper/vetur/tags.json",
@@ -1,7 +1,9 @@
1
1
  import XEUtils from 'xe-utils'
2
2
  import GlobalConfig from '../../v-x-e-table/src/conf'
3
3
  import vSize from '../../mixins/size'
4
- import { UtilTools, DomTools, GlobalEvent } from '../../tools'
4
+ import UtilTools, { getFuncText } from '../../tools/utils'
5
+ import DomTools from '../../tools/dom'
6
+ import { GlobalEvent } from '../../tools/event'
5
7
 
6
8
  export default {
7
9
  name: 'VxeButton',
@@ -155,7 +157,7 @@ export default {
155
157
  contents.push(
156
158
  h('span', {
157
159
  class: 'vxe-button--content'
158
- }, [UtilTools.getFuncText(content)])
160
+ }, [getFuncText(content)])
159
161
  )
160
162
  }
161
163
  return contents
@@ -1,4 +1,4 @@
1
- import { UtilTools } from '../../tools'
1
+ import { getFuncText } from '../../tools/utils'
2
2
  import XEUtils from 'xe-utils'
3
3
  import GlobalConfig from '../../v-x-e-table/src/conf'
4
4
  import vSize from '../../mixins/size'
@@ -62,7 +62,7 @@ export default {
62
62
  }),
63
63
  h('span', {
64
64
  class: 'vxe-checkbox--label'
65
- }, $scopedSlots.default ? $scopedSlots.default.call(this, {}) : [UtilTools.getFuncText(content)])
65
+ }, $scopedSlots.default ? $scopedSlots.default.call(this, {}) : [getFuncText(content)])
66
66
  ])
67
67
  },
68
68
  methods: {
@@ -1,7 +1,8 @@
1
1
  import XEUtils from 'xe-utils'
2
2
  import VXETable from '../../v-x-e-table'
3
- import { UtilTools, DomTools, isEnableConf } from '../../tools'
4
- import { browse } from '../../tools/src/dom'
3
+ import UtilTools, { isEnableConf } from '../../tools/utils'
4
+ import DomTools, { browse } from '../../tools/dom'
5
+ import { warnLog, errLog } from '../../tools/log'
5
6
 
6
7
  const { getRowid } = UtilTools
7
8
 
@@ -28,7 +29,7 @@ function insertTreeRow (_vm, newRecords, isAppend) {
28
29
  } else {
29
30
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
30
31
  if (parentRowId) {
31
- UtilTools.warn('vxe.error.unableInsert')
32
+ warnLog('vxe.error.unableInsert')
32
33
  }
33
34
  }
34
35
  afterFullData[funcName](item)
@@ -110,7 +111,7 @@ export default {
110
111
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
111
112
  if (item[treeOpts.parentField]) {
112
113
  if (parentRow && item[treeOpts.parentField] !== parentRow[rowField]) {
113
- UtilTools.error('vxe.error.errProp', [`${treeOpts.parentField}=${item[treeOpts.parentField]}`, `${treeOpts.parentField}=${parentRow[rowField]}`])
114
+ errLog('vxe.error.errProp', [`${treeOpts.parentField}=${item[treeOpts.parentField]}`, `${treeOpts.parentField}=${parentRow[rowField]}`])
114
115
  }
115
116
  }
116
117
  }
@@ -124,7 +125,7 @@ export default {
124
125
  })
125
126
  } else {
126
127
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
127
- UtilTools.warn('vxe.error.unableInsert')
128
+ warnLog('vxe.error.unableInsert')
128
129
  }
129
130
  insertTreeRow(this, newRecords, true)
130
131
  }
@@ -142,7 +143,7 @@ export default {
142
143
  afIndex = afterFullData.indexOf(row)
143
144
  }
144
145
  if (afIndex === -1) {
145
- throw new Error(UtilTools.error('vxe.error.unableInsert'))
146
+ throw new Error(errLog('vxe.error.unableInsert'))
146
147
  }
147
148
  afterFullData.splice(afIndex, 0, ...newRecords)
148
149
  tableFullData.splice(tableFullData.indexOf(row), 0, ...newRecords)
@@ -5,7 +5,7 @@ import VxeInput from '../../input/src/input'
5
5
  import VxeCheckbox from '../../checkbox/src/checkbox'
6
6
  import VxeSelect from '../../select/src/select'
7
7
  import VxeOption from '../../select/src/option'
8
- import { UtilTools } from '../../tools'
8
+ import UtilTools from '../../tools/utils'
9
9
 
10
10
  export default {
11
11
  name: 'VxeExportPanel',
@@ -2,7 +2,7 @@ import XEUtils from 'xe-utils'
2
2
  import GlobalConfig from '../../v-x-e-table/src/conf'
3
3
  import VxeModal from '../../modal/src/modal'
4
4
  import VxeRadio from '../../radio/src/radio'
5
- import { UtilTools } from '../../tools'
5
+ import UtilTools from '../../tools/utils'
6
6
 
7
7
  export default {
8
8
  name: 'VxeImportPanel',
@@ -1,9 +1,10 @@
1
1
  import XEUtils from 'xe-utils'
2
2
  import GlobalConfig from '../../v-x-e-table/src/conf'
3
3
  import VXETable from '../../v-x-e-table'
4
- import { UtilTools } from '../../tools'
5
- import { mergeBodyMethod } from '../../table/src/util'
6
- import { browse } from '../../tools/src/dom'
4
+ import UtilTools from '../../tools/utils'
5
+ import { mergeBodyMethod, isColumnInfo } from '../../table/src/util'
6
+ import { browse } from '../../tools/dom'
7
+ import { warnLog, errLog } from '../../tools/log'
7
8
 
8
9
  const { formatText } = UtilTools
9
10
 
@@ -589,7 +590,7 @@ function downloadFile ($xetable, opts, content) {
589
590
  // 检测弹窗模块
590
591
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
591
592
  if (!VXETable.modal) {
592
- UtilTools.error('vxe.error.reqModule', ['Modal'])
593
+ errLog('vxe.error.reqModule', ['Modal'])
593
594
  }
594
595
  }
595
596
  VXETable.modal.message({ content: GlobalConfig.i18n('vxe.table.expSuccess'), status: 'success' })
@@ -816,7 +817,7 @@ function handleImport ($xetable, content, opts) {
816
817
  // 检测弹窗模块
817
818
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
818
819
  if (!VXETable.modal) {
819
- UtilTools.error('vxe.error.reqModule', ['Modal'])
820
+ errLog('vxe.error.reqModule', ['Modal'])
820
821
  }
821
822
  }
822
823
  VXETable.modal.message({ content: GlobalConfig.i18n('vxe.table.impSuccess', [rows.length]), status: 'success' })
@@ -831,7 +832,7 @@ function handleImport ($xetable, content, opts) {
831
832
  // 检测弹窗模块
832
833
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
833
834
  if (!VXETable.modal) {
834
- UtilTools.error('vxe.error.reqModule', ['Modal'])
835
+ errLog('vxe.error.reqModule', ['Modal'])
835
836
  }
836
837
  }
837
838
  VXETable.modal.message({ content: GlobalConfig.i18n('vxe.error.impFields'), status: 'error' })
@@ -851,7 +852,7 @@ function handleFileImport ($xetable, file, opts) {
851
852
  // 检测弹窗模块
852
853
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
853
854
  if (!VXETable.modal) {
854
- UtilTools.error('vxe.error.reqModule', ['Modal'])
855
+ errLog('vxe.error.reqModule', ['Modal'])
855
856
  }
856
857
  }
857
858
  VXETable.modal.message({ content: GlobalConfig.i18n('vxe.error.notType', [type]), status: 'error' })
@@ -889,7 +890,7 @@ function handleFileImport ($xetable, file, opts) {
889
890
  $xetable.preventEvent(null, 'event.import', { file, options, columns: $xetable.tableFullColumn }, () => {
890
891
  const reader = new FileReader()
891
892
  reader.onerror = () => {
892
- UtilTools.error('vxe.error.notType', [type])
893
+ errLog('vxe.error.notType', [type])
893
894
  _importReject({ status: false })
894
895
  }
895
896
  reader.onload = (e) => {
@@ -901,7 +902,7 @@ function handleFileImport ($xetable, file, opts) {
901
902
  } else {
902
903
  // 不支持的浏览器
903
904
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
904
- UtilTools.error('vxe.error.notExp')
905
+ errLog('vxe.error.notExp')
905
906
  }
906
907
  _importResolve({ status: true })
907
908
  }
@@ -959,7 +960,7 @@ export function readLocalFile (options = {}) {
959
960
  // 检测弹窗模块
960
961
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
961
962
  if (!VXETable.modal) {
962
- UtilTools.error('vxe.error.reqModule', ['Modal'])
963
+ errLog('vxe.error.reqModule', ['Modal'])
963
964
  }
964
965
  }
965
966
  VXETable.modal.message({ content: GlobalConfig.i18n('vxe.error.notType', [errType]), status: 'error' })
@@ -1053,7 +1054,7 @@ function handleExportAndPrint ($xetable, options, isPrint) {
1053
1054
  const isColGroup = column.children && column.children.length
1054
1055
  if (isColGroup || defaultFilterExportColumn(column)) {
1055
1056
  column.checked = columns ? columns.some((item) => {
1056
- if (UtilTools.isColumn(item)) {
1057
+ if (isColumnInfo(item)) {
1057
1058
  return column === item
1058
1059
  } else if (XEUtils.isString(item)) {
1059
1060
  return column.field === item
@@ -1209,7 +1210,7 @@ export default {
1209
1210
  XEUtils.mapTree(customCols, item => {
1210
1211
  let targetColumn
1211
1212
  if (item) {
1212
- if (UtilTools.isColumn(item)) {
1213
+ if (isColumnInfo(item)) {
1213
1214
  targetColumn = item
1214
1215
  } else if (XEUtils.isString(item)) {
1215
1216
  targetColumn = this.getColumnByField(item)
@@ -1233,7 +1234,7 @@ export default {
1233
1234
  children: 'childNodes',
1234
1235
  mapChildren: '_children'
1235
1236
  }),
1236
- (column, index) => UtilTools.isColumn(column) && (!columnFilterMethod || columnFilterMethod({ column, $columnIndex: index })),
1237
+ (column, index) => isColumnInfo(column) && (!columnFilterMethod || columnFilterMethod({ column, $columnIndex: index })),
1237
1238
  {
1238
1239
  children: '_children',
1239
1240
  mapChildren: 'childNodes',
@@ -1264,7 +1265,7 @@ export default {
1264
1265
  // 检查类型,如果为自定义导出,则不需要校验类型
1265
1266
  if (!opts.exportMethod && !XEUtils.includes(VXETable.config.exportTypes, type)) {
1266
1267
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
1267
- UtilTools.error('vxe.error.notType', [type])
1268
+ errLog('vxe.error.notType', [type])
1268
1269
  }
1269
1270
  const params = { status: false }
1270
1271
  return Promise.reject(params)
@@ -1288,7 +1289,7 @@ export default {
1288
1289
  } else if (mode === 'all') {
1289
1290
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
1290
1291
  if (!$xegrid) {
1291
- UtilTools.warn('vxe.error.errProp', ['all', 'mode=current,selected'])
1292
+ warnLog('vxe.error.errProp', ['all', 'mode=current,selected'])
1292
1293
  }
1293
1294
  }
1294
1295
 
@@ -1298,7 +1299,7 @@ export default {
1298
1299
 
1299
1300
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
1300
1301
  if (!ajaxMethods) {
1301
- UtilTools.warn('vxe.error.notFunc', ['proxy-config.ajax.queryAll'])
1302
+ warnLog('vxe.error.notFunc', ['proxy-config.ajax.queryAll'])
1302
1303
  }
1303
1304
  }
1304
1305
 
@@ -1397,7 +1398,7 @@ export default {
1397
1398
  return
1398
1399
  }
1399
1400
  if (!this.importConfig) {
1400
- UtilTools.error('vxe.error.reqProp', ['import-config'])
1401
+ errLog('vxe.error.reqProp', ['import-config'])
1401
1402
  }
1402
1403
  // 处理类型
1403
1404
  const typeList = types.map(value => {
@@ -1427,7 +1428,7 @@ export default {
1427
1428
  const { exportOpts } = this
1428
1429
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
1429
1430
  if (!this.exportConfig) {
1430
- UtilTools.error('vxe.error.reqProp', ['export-config'])
1431
+ errLog('vxe.error.reqProp', ['export-config'])
1431
1432
  }
1432
1433
  }
1433
1434
  return handleExportAndPrint(this, Object.assign({}, exportOpts, options))
@@ -1436,7 +1437,7 @@ export default {
1436
1437
  const { printOpts } = this
1437
1438
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
1438
1439
  if (!this.printConfig) {
1439
- UtilTools.error('vxe.error.reqProp', ['print-config'])
1440
+ errLog('vxe.error.reqProp', ['print-config'])
1440
1441
  }
1441
1442
  }
1442
1443
  return handleExportAndPrint(this, Object.assign({}, printOpts, options), true)
@@ -1,6 +1,6 @@
1
1
  import XEUtils from 'xe-utils'
2
- import { UtilTools, DomTools } from '../../tools'
3
- import { handleFieldOrColumn } from '../../table/src/util'
2
+ import DomTools from '../../tools/dom'
3
+ import { toFilters, handleFieldOrColumn } from '../../table/src/util'
4
4
  import VXETable from '../../v-x-e-table'
5
5
 
6
6
  export default {
@@ -32,7 +32,7 @@ export default {
32
32
  _setFilter (fieldOrColumn, options) {
33
33
  const column = handleFieldOrColumn(this, fieldOrColumn)
34
34
  if (column && column.filters && options) {
35
- column.filters = UtilTools.getFilters(options)
35
+ column.filters = toFilters(options)
36
36
  }
37
37
  return this.$nextTick()
38
38
  },
@@ -159,7 +159,7 @@ export default {
159
159
  * @param {Event} evnt 事件
160
160
  */
161
161
  confirmFilterEvent (evnt) {
162
- const { filterStore, filterOpts, scrollXLoad, scrollYLoad } = this
162
+ const { filterStore, filterOpts, scrollXLoad: oldScrollXLoad, scrollYLoad: oldScrollYLoad } = this
163
163
  const { column } = filterStore
164
164
  const { property } = column
165
165
  const values = []
@@ -175,22 +175,26 @@ export default {
175
175
  if (!filterOpts.remote) {
176
176
  this.handleTableData(true)
177
177
  this.checkSelectionStatus()
178
- this.updateFooter()
179
- if (scrollXLoad || scrollYLoad) {
180
- if (scrollXLoad) {
178
+ }
179
+ this.emitEvent('filter-change', { column, property, values, datas, filters: filterList, filterList }, evnt)
180
+ this.closeFilter()
181
+ this.updateFooter().then(() => {
182
+ const { scrollXLoad, scrollYLoad } = this
183
+ if ((oldScrollXLoad || scrollXLoad) || (oldScrollYLoad || scrollYLoad)) {
184
+ if ((oldScrollXLoad || scrollXLoad)) {
181
185
  this.updateScrollXSpace()
182
186
  }
183
- if (scrollYLoad) {
187
+ if ((oldScrollYLoad || scrollYLoad)) {
184
188
  this.updateScrollYSpace()
185
189
  }
186
- this.refreshScroll()
190
+ return this.refreshScroll()
187
191
  }
188
- }
189
- this.emitEvent('filter-change', { column, property, values, datas, filters: filterList, filterList }, evnt)
190
- this.closeFilter()
191
- this.$nextTick(() => {
192
- this.recalculate()
192
+ }).then(() => {
193
193
  this.updateCellAreas()
194
+ return this.recalculate(true)
195
+ }).then(() => {
196
+ // 存在滚动行为未结束情况
197
+ setTimeout(() => this.recalculate(), 50)
194
198
  })
195
199
  },
196
200
  handleClearFilter (column) {
@@ -1,6 +1,6 @@
1
1
  import GlobalConfig from '../../v-x-e-table/src/conf'
2
2
  import VXETable from '../../v-x-e-table'
3
- import { UtilTools } from '../../tools'
3
+ import UtilTools from '../../tools/utils'
4
4
  import XEUtils from 'xe-utils'
5
5
 
6
6
  export default {
@@ -1,5 +1,6 @@
1
1
  import XEUtils from 'xe-utils'
2
- import { UtilTools, DomTools } from '../../tools'
2
+ import UtilTools from '../../tools/utils'
3
+ import DomTools from '../../tools/dom'
3
4
 
4
5
  const cellType = 'footer'
5
6
 
@@ -61,6 +62,7 @@ export default {
61
62
  align: allAlign,
62
63
  scrollXLoad,
63
64
  columnKey,
65
+ columnOpts,
64
66
  showFooterOverflow: allColumnFooterOverflow,
65
67
  currentColumn,
66
68
  overflowX,
@@ -227,7 +229,7 @@ export default {
227
229
  attrs,
228
230
  style: footerCellStyle ? (XEUtils.isFunction(footerCellStyle) ? footerCellStyle(params) : footerCellStyle) : null,
229
231
  on: tfOns,
230
- key: columnKey ? column.id : $columnIndex
232
+ key: columnKey || columnOpts.useKey ? column.id : $columnIndex
231
233
  }, [
232
234
  h('div', {
233
235
  class: ['vxe-cell', {
@@ -1,5 +1,5 @@
1
1
  import VxeFormItem from './form-item'
2
- import { UtilTools } from '../../tools'
2
+ import { errLog } from '../../tools/log'
3
3
 
4
4
  export default {
5
5
  name: 'VxeFormGather',
@@ -13,7 +13,7 @@ export default {
13
13
  if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
14
14
  this.$nextTick(() => {
15
15
  if (this.$xeform && this.$xeform.customLayout) {
16
- UtilTools.error('vxe.error.errConflicts', ['custom-layout', '<form-gather ...>'])
16
+ errLog('vxe.error.errConflicts', ['custom-layout', '<form-gather ...>'])
17
17
  }
18
18
  })
19
19
  }
@@ -1,7 +1,7 @@
1
1
  import XEUtils from 'xe-utils'
2
2
  import GlobalConfig from '../../v-x-e-table/src/conf'
3
3
  import VXETable from '../../v-x-e-table'
4
- import { UtilTools, isEnableConf } from '../../tools'
4
+ import { isEnableConf, getFuncText } from '../../tools/utils'
5
5
  import { createItem, destroyItem, assemItem } from './util'
6
6
  import { renderTitle } from './render'
7
7
 
@@ -93,7 +93,7 @@ const renderItem = (h, _vm, item, slots) => {
93
93
  width: isNaN(titleWidth) ? titleWidth : `${titleWidth}px`
94
94
  } : null,
95
95
  attrs: {
96
- title: showTitle ? UtilTools.getFuncText(title) : null
96
+ title: showTitle ? getFuncText(title) : null
97
97
  },
98
98
  on: ons
99
99
  }, renderTitle(h, _vm, item)) : null,
@@ -137,6 +137,11 @@ export default {
137
137
  default: null
138
138
  }
139
139
  },
140
+ data () {
141
+ return {
142
+ itemConfig: null
143
+ }
144
+ },
140
145
  watch,
141
146
  mounted () {
142
147
  assemItem(this)