-
Notifications
You must be signed in to change notification settings - Fork 10.1k
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
[BLAZOR WASM] Massive UI lag when typing in an input of a complex component #29425
Comments
We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process. |
The discussion in #18919 is about the same topic and also worth reading. |
@TanayParikh What is this issue blocked on? |
Tracking the fix for this issue in #30291. We'll be implementing a new component |
Are you really addressing the original poster's issue? @TanayParikh |
I wasn't able to repro the UI lag for Blazor WebAssembly, I only encountered it on Blazor server using a text area with 20k+ chars. This was due to the added overhead of JS->.NET interop on 20k+ chars on each key press, alongside the network overhead. Reducing the JS->.NET interop overhead will have performance benefits for Blazor WebAssembly as well. If you're encountering this issue specifically in complex components, I'd encourage you to review the Blazor WebAssembly Performance Best Practices which details rendering optimizations to resolve the issue. In that case, I'd say this issue is a duplicate of/resolved via #18919. |
FYI @Flaflo |
Yes, its related to #18919 but my problem here is specifically that a re-render is triggered if a text input event is happening. This makes no sense. |
I believe https://docs.microsoft.com/en-us/aspnet/core/blazor/webassembly-performance-best-practices?view=aspnetcore-6.0#avoid-rerendering-after-handling-events-without-state-changes may be what you're looking for in that case. |
Describe the bug
This bug is known since 2019 but nothing was done against it. It was reported here #17951 and added into the .NET 5 sprints but was closed and locked without actually fixing the bug or providing an acceptable workaround. To be honest, this makes me a little bit upset because clearly this is a critical performance issue.
To Reproduce
This should not be that hard, but I think the best way to reproduce is to use some component library such as https://mudblazor.com/ and create a dialog with many input fields inside.
Any other information can be taken out of the closed issue all of it is already there.
Further technical details
Please fix this and dont ignore this issue. I am not the only one having problems with this. It is mandatory for Blazor to be used in bigger business applications. The current performance in complex environments is not acceptable.
The text was updated successfully, but these errors were encountered: