Commit 71c0bb9363dbb2cfcc71ec7b3b80e102d3406220
1 parent
e517fa06
perf: perf some component hidde data source bind panel
Showing
1 changed file
with
28 additions
and
7 deletions
| ... | ... | @@ -372,6 +372,7 @@ Format.prototype.immediateRefresh = function () { |
| 372 | 372 | div.style.color = "rgb(112, 112, 112)"; |
| 373 | 373 | div.style.textAlign = "left"; |
| 374 | 374 | div.style.cursor = "default"; |
| 375 | + div.style.display = 'flex' | |
| 375 | 376 | |
| 376 | 377 | var label = document.createElement("div"); |
| 377 | 378 | label.className = "geFormatSection"; |
| ... | ... | @@ -385,6 +386,7 @@ Format.prototype.immediateRefresh = function () { |
| 385 | 386 | label.style.height = "25px"; |
| 386 | 387 | label.style.overflow = "hidden"; |
| 387 | 388 | label.style.width = "100%"; |
| 389 | + label.style.flex = 'auto' | |
| 388 | 390 | this.container.appendChild(div); |
| 389 | 391 | |
| 390 | 392 | // Prevents text selection |
| ... | ... | @@ -584,14 +586,33 @@ Format.prototype.immediateRefresh = function () { |
| 584 | 586 | this.panels.push(new ArrangePanel(this, ui, arrangePanel)); |
| 585 | 587 | this.container.appendChild(arrangePanel); |
| 586 | 588 | |
| 587 | - // bind data | |
| 588 | - mxUtils.write(label4, "数据绑定"); | |
| 589 | - div.appendChild(label4); | |
| 589 | + /** | |
| 590 | + * @description 验证是否有数据绑定面板 | |
| 591 | + * @returns {boolean} | |
| 592 | + */ | |
| 593 | + const validateHasDataSourcePanel = () => { | |
| 594 | + const ui = this.editorUi; | |
| 595 | + const ss = ui.getSelectionState(); | |
| 596 | + const vertices = ss.vertices || [] | |
| 597 | + const sidebarInstance = ui.sidebar | |
| 598 | + const cell = vertices[0] | |
| 599 | + if (!cell) return false | |
| 600 | + const basicAttr = sidebarInstance.enumCellBasicAttribute | |
| 601 | + const componentType = cell.getAttribute(basicAttr.COMPONENT_TYPE) | |
| 602 | + const hasPermission = sidebarInstance.getComponentPermission(componentType) | |
| 603 | + return !!hasPermission.length | |
| 604 | + } | |
| 605 | + | |
| 606 | + if (validateHasDataSourcePanel()) { | |
| 607 | + // bind data | |
| 608 | + mxUtils.write(label4, "数据绑定"); | |
| 609 | + div.appendChild(label4); | |
| 590 | 610 | |
| 591 | - var dataPanel = div.cloneNode(false); | |
| 592 | - dataPanel.style.display = "none"; | |
| 593 | - this.panels.push(new DataFormatPanel(this, ui, dataPanel)); | |
| 594 | - this.container.appendChild(dataPanel); | |
| 611 | + var dataPanel = div.cloneNode(false); | |
| 612 | + dataPanel.style.display = "none"; | |
| 613 | + this.panels.push(new DataFormatPanel(this, ui, dataPanel)); | |
| 614 | + this.container.appendChild(dataPanel); | |
| 615 | + } | |
| 595 | 616 | |
| 596 | 617 | if (ss.cells.length > 0) { |
| 597 | 618 | addClickHandler(label2, textPanel, idx++); | ... | ... |