Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

[Feat]: Virtualization of table rows #1974

Open
Open
Labels
Javascript FrontendPull requests that update Javascript code Table ComponentAll things related to Table component
@signalcodec-work

Description

Summary

The built-in Table component in Lowcoder (based on Ant Design) currently does not expose a way to enable row virtualization. With only a few hundred rows, the table becomes sluggish to render and interact with. Ant Design v5 has a native virtual prop that drastically improves performance for large datasets, but there is no toggle or property in Lowcoder’s UI to take advantage of it.

Problem

Even with ~200–300 rows ×ばつ 7 columns of small text/numbers, row selection and updates feel laggy.

Analysis shows the table re-renders all rows on selection changes, making performance degrade quickly.

Pagination is available, but some use cases require showing hundreds or thousands of rows continuously (e.g. quick scanning, cross-row analysis).

Since Lowcoder 2.6.2, Ant Design has been upgraded to v5.23.x, which supports table virtualization. However, the feature isn’t accessible via Lowcoder’s component settings.

Proposed Solution

Add a property in the Table component to enable virtualization. This could be:

A boolean toggle (Virtual scrolling: on/off) in the Table’s settings panel.

An optional numeric input for scroll.y height (required by AntD’s virtual mode).

Defaults off for backwards compatibility, but when enabled it passes virtual and scroll={{ y: }} to the underlying AntD

.

Benefits

Performance improvement when displaying large datasets (thousands of rows).

Faster row selection and smoother scrolling.

Aligns with AntD’s own recommendation to use pagination or virtualization for large data.

Gives developers flexibility to choose between pagination and virtual scroll depending on use case.

Alternatives

Continue using pagination (not suitable for all cases).

Patch Lowcoder source or build a custom component (maintenance burden for self-hosters).

Embed third-party grids like AG Grid (extra complexity, breaks Lowcoder consistency).

References

Ant Design v5 Table virtualization docs: AntD Table Virtual

Lowcoder release notes showing Ant Design upgrade in v2.6.2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Javascript FrontendPull requests that update Javascript code Table ComponentAll things related to Table component

    Type

    Projects

    Status

    📋 Backlog

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /