Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draw only style updates without data updates #201

Open
djbarnwal opened this issue Oct 24, 2023 · 1 comment
Open

Draw only style updates without data updates #201

djbarnwal opened this issue Oct 24, 2023 · 1 comment

Comments

@djbarnwal
Copy link

djbarnwal commented Oct 24, 2023

Support Question

Is there a way or an API to invoke only the style listeners without invoking the data listeners. The table.draw API updates both the data as well as style.

Sometimes to add more interactivity to the table (such as highlighting the column containing the cell on hover) requires recalculating the styles of the cells. Currently I achieve this by calling table.draw but this also invokes the data callback which adds an unnecessary overhead. This ends up being a laggy experience if I am hovering through multiple cells very quickly.

@texodus
Copy link
Member

texodus commented Feb 4, 2025

I don't think this can be done currently - I would be ok with adding this API but it is a medium complexity change as the component does not currently cache the data listener pages.

You may be able to achieve what you want by just styling the grid directly without calling draw() - e.g. getMeta calls on the td elements work outside of a style listener callback. You may also be able to workaround by memoizing table.innerHTML in the initial draw listener call, then swap this pre-styled copy back into the DOM in your hover handler.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants