Uploaded image for project: 'ZK'
  1. ZK
  2. ZK-3835

Improve Tree client ROD rendering method

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Normal
    • Resolution: Done
    • Affects Version/s: 8.5.0
    • Fix Version/s: 8.5.1
    • Component/s: Components
    • Labels:
    • Environment:

      IE11
      Edge

    • gh.sprint.customfield.default.name:
      ZK 8.5.1 R1

      Description

      For now, the way of Tree component ROD is to render initRodSize items and other dummy items to the table first, and when the users do scrolling it will re-render visible items and replace the old dummy items.

      If there is a tree node which has 10,000 child nodes, the browser needs to append 50 real nodes and 9,950 dummy nodes when this node is opened. Some browsers, like IE or Edge, the layout performance of large table is low because It needs to recalculate every <tr>, <td> style.

      In fact, there is no need to render so many items at once. A better way is to render initRodSize items and some dummy items (not all), and when the users do scrolling it will append more dummy items. The widget controls the count of dummy items being rendered.

        Issue Links

          Activity

          Hide
          bobpeng bobpeng added a comment -

          Ready since 2018/01/25

          Show
          bobpeng bobpeng added a comment - Ready since 2018/01/25

            People

            • Assignee:
              rudyhuang rudyhuang
              Reporter:
              rudyhuang rudyhuang
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 1 week Original Estimate - 1 week
                1w
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 week, 7 hours
                1w 7h

                  Agile