Browse Source

fix 大表格切换卡顿

es6
NieShichao 7 years ago
parent
commit
f084db597f
  1. 15
      demo/js/category/canvasTable/large.table.canvas.js
  2. 0
      demo/js/category/canvasTable/new.canvas.js
  3. 15
      demo/js/category/largeTable/largeTable.js
  4. 30
      dist/demo.js

15
demo/js/category/canvasTable/largeTableCanvas.js → demo/js/category/canvasTable/large.table.canvas.js

@ -72,8 +72,13 @@ Demo.CanvasTable = BI.inherit(BI.Widget, {
mounted: function () { mounted: function () {
var self = this; var self = this;
var tableItems = this._expandData(TABLE_ITEMS, 3), if (BI.isNull(BI.isExpanded)) {
headItems = this._expandHeadData(TABLE_HEADER, 3); BI.isExpanded = false;
} else if (!BI.isExpanded) {
TABLE_ITEMS = this._expandData(TABLE_ITEMS, 3);
TABLE_HEADER = this._expandHeadData(TABLE_HEADER, 3);
BI.isExpanded = true;
}
this._resizeHandler = BI.debounce(function () { this._resizeHandler = BI.debounce(function () {
var width = self.element.width(), height = self.element.height(); var width = self.element.width(), height = self.element.height();
if (self.table.getWidth() !== width || self.table.getHeight() !== height) { if (self.table.getWidth() !== width || self.table.getHeight() !== height) {
@ -87,14 +92,14 @@ Demo.CanvasTable = BI.inherit(BI.Widget, {
}); });
this.table.setWidth(this.element.width()); this.table.setWidth(this.element.width());
this.table.setHeight(this.element.height()); this.table.setHeight(this.element.height());
this.table.attr("columnSize", BI.makeArray(headItems[0].length, "")); this.table.attr("columnSize", BI.makeArray(TABLE_HEADER[0].length, ""));
this.table.attr("minColumnSize", BI.makeArray(headItems[0].length, 60)); this.table.attr("minColumnSize", BI.makeArray(TABLE_HEADER[0].length, 60));
this.table.attr("isNeedFreeze", true); this.table.attr("isNeedFreeze", true);
this.table.attr("freezeCols", []); this.table.attr("freezeCols", []);
this.table.attr("showSequence", true); this.table.attr("showSequence", true);
this.table.attr("headerRowSize", 15); this.table.attr("headerRowSize", 15);
this.table.attr("rowSize", 15); this.table.attr("rowSize", 15);
this.table.populate(tableItems, headItems); this.table.populate(TABLE_ITEMS, TABLE_HEADER);
}, },
_expandData: function (items, times) { _expandData: function (items, times) {

0
demo/js/category/canvasTable/newCanvas.js → demo/js/category/canvasTable/new.canvas.js

15
demo/js/category/largeTable/largeTable.js

@ -72,8 +72,13 @@ Demo.Face = BI.inherit(BI.Widget, {
mounted: function () { mounted: function () {
var self = this; var self = this;
var tableItems = this._expandData(TABLE_ITEMS, 3), if (BI.isNull(BI.isExpanded)) {
headItems = this._expandHeadData(TABLE_HEADER, 3); BI.isExpanded = false;
} else if (!BI.isExpanded) {
TABLE_ITEMS = this._expandData(TABLE_ITEMS, 3);
TABLE_HEADER = this._expandHeadData(TABLE_HEADER, 3);
BI.isExpanded = true;
}
this._resizeHandler = BI.debounce(function () { this._resizeHandler = BI.debounce(function () {
var width = self.element.width(), height = self.element.height(); var width = self.element.width(), height = self.element.height();
if (self.table.getWidth() !== width || self.table.getHeight() !== height) { if (self.table.getWidth() !== width || self.table.getHeight() !== height) {
@ -87,14 +92,14 @@ Demo.Face = BI.inherit(BI.Widget, {
}); });
this.table.setWidth(this.element.width()); this.table.setWidth(this.element.width());
this.table.setHeight(this.element.height()); this.table.setHeight(this.element.height());
this.table.attr("columnSize", BI.makeArray(headItems[0].length, "")); this.table.attr("columnSize", BI.makeArray(TABLE_HEADER[0].length, ""));
this.table.attr("minColumnSize", BI.makeArray(headItems[0].length, 60)); this.table.attr("minColumnSize", BI.makeArray(TABLE_HEADER[0].length, 60));
this.table.attr("isNeedFreeze", true); this.table.attr("isNeedFreeze", true);
this.table.attr("freezeCols", []); this.table.attr("freezeCols", []);
this.table.attr("showSequence", true); this.table.attr("showSequence", true);
this.table.attr("headerRowSize", 15); this.table.attr("headerRowSize", 15);
this.table.attr("rowSize", 15); this.table.attr("rowSize", 15);
this.table.populate(tableItems, headItems); this.table.populate(TABLE_ITEMS, TABLE_HEADER);
}, },
_expandData: function (items, times) { _expandData: function (items, times) {

30
dist/demo.js vendored

@ -4003,8 +4003,13 @@ BI.shortcut("demo.text_trigger", Demo.Func);Demo.CanvasTable = BI.inherit(BI.Wid
mounted: function () { mounted: function () {
var self = this; var self = this;
var tableItems = this._expandData(TABLE_ITEMS, 3), if (BI.isNull(BI.isExpanded)) {
headItems = this._expandHeadData(TABLE_HEADER, 3); BI.isExpanded = false;
} else if (!BI.isExpanded) {
TABLE_ITEMS = this._expandData(TABLE_ITEMS, 3);
TABLE_HEADER = this._expandHeadData(TABLE_HEADER, 3);
BI.isExpanded = true;
}
this._resizeHandler = BI.debounce(function () { this._resizeHandler = BI.debounce(function () {
var width = self.element.width(), height = self.element.height(); var width = self.element.width(), height = self.element.height();
if (self.table.getWidth() !== width || self.table.getHeight() !== height) { if (self.table.getWidth() !== width || self.table.getHeight() !== height) {
@ -4018,14 +4023,14 @@ BI.shortcut("demo.text_trigger", Demo.Func);Demo.CanvasTable = BI.inherit(BI.Wid
}); });
this.table.setWidth(this.element.width()); this.table.setWidth(this.element.width());
this.table.setHeight(this.element.height()); this.table.setHeight(this.element.height());
this.table.attr("columnSize", BI.makeArray(headItems[0].length, "")); this.table.attr("columnSize", BI.makeArray(TABLE_HEADER[0].length, ""));
this.table.attr("minColumnSize", BI.makeArray(headItems[0].length, 60)); this.table.attr("minColumnSize", BI.makeArray(TABLE_HEADER[0].length, 60));
this.table.attr("isNeedFreeze", true); this.table.attr("isNeedFreeze", true);
this.table.attr("freezeCols", []); this.table.attr("freezeCols", []);
this.table.attr("showSequence", true); this.table.attr("showSequence", true);
this.table.attr("headerRowSize", 15); this.table.attr("headerRowSize", 15);
this.table.attr("rowSize", 15); this.table.attr("rowSize", 15);
this.table.populate(tableItems, headItems); this.table.populate(TABLE_ITEMS, TABLE_HEADER);
}, },
_expandData: function (items, times) { _expandData: function (items, times) {
@ -4657,8 +4662,13 @@ BI.shortcut("bi.detail_table_header", BI.DetailTableHeader);Demo.Face = BI.inher
mounted: function () { mounted: function () {
var self = this; var self = this;
var tableItems = this._expandData(TABLE_ITEMS, 3), if (BI.isNull(BI.isExpanded)) {
headItems = this._expandHeadData(TABLE_HEADER, 3); BI.isExpanded = false;
} else if (!BI.isExpanded) {
TABLE_ITEMS = this._expandData(TABLE_ITEMS, 3);
TABLE_HEADER = this._expandHeadData(TABLE_HEADER, 3);
BI.isExpanded = true;
}
this._resizeHandler = BI.debounce(function () { this._resizeHandler = BI.debounce(function () {
var width = self.element.width(), height = self.element.height(); var width = self.element.width(), height = self.element.height();
if (self.table.getWidth() !== width || self.table.getHeight() !== height) { if (self.table.getWidth() !== width || self.table.getHeight() !== height) {
@ -4672,14 +4682,14 @@ BI.shortcut("bi.detail_table_header", BI.DetailTableHeader);Demo.Face = BI.inher
}); });
this.table.setWidth(this.element.width()); this.table.setWidth(this.element.width());
this.table.setHeight(this.element.height()); this.table.setHeight(this.element.height());
this.table.attr("columnSize", BI.makeArray(headItems[0].length, "")); this.table.attr("columnSize", BI.makeArray(TABLE_HEADER[0].length, ""));
this.table.attr("minColumnSize", BI.makeArray(headItems[0].length, 60)); this.table.attr("minColumnSize", BI.makeArray(TABLE_HEADER[0].length, 60));
this.table.attr("isNeedFreeze", true); this.table.attr("isNeedFreeze", true);
this.table.attr("freezeCols", []); this.table.attr("freezeCols", []);
this.table.attr("showSequence", true); this.table.attr("showSequence", true);
this.table.attr("headerRowSize", 15); this.table.attr("headerRowSize", 15);
this.table.attr("rowSize", 15); this.table.attr("rowSize", 15);
this.table.populate(tableItems, headItems); this.table.populate(TABLE_ITEMS, TABLE_HEADER);
}, },
_expandData: function (items, times) { _expandData: function (items, times) {

Loading…
Cancel
Save