You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A StreamRendering parent that updates a Param that it passes to a WASM child component doesn't update/rerender appropriately with incremental updates. I'm using an async enumerable; in my repro I slow it way down to illustrate.
Here is the WASM child component. Without the tabs, just the grid by itself, or a vanilla usage of just rendering a plain list, it works fine and updates smoothly as data is streamed in.
With the Tab component un-commented, it renders initially but doesn't handle updates well, flickers until all data is settled.
Tabs shouldn't have unique rendering properties in relation to streaming updates.
😯 Current Behavior
Without the tabs:
Without.Tab.mp4
With the tabs:
WithTab.mp4
💁 Possible Solution
I'm guessing it has something to do with JavaScript and web components.
🔦 Context
I'm trying to find the ideal way to do pre-rendering, but avoid flickers and double renders. SSR with Stream rendering as much as possible, with isolated WASM for interactive components that have props passed to them by parents works pretty great, avoiding using a web api on the client as much as possible. Data fetched on server and serialized automatically as [Parameter].
🌍 Your Environment
OS & Device: [Windows]
Browser [Microsoft Edge]
.NET and Fluent UI Blazor library Version [4.11.8, .NET 9]
The text was updated successfully, but these errors were encountered:
Yeah, I think it is a combination of web components, the JavaScript and using the DataGrid inside of the Tabs. Something in the combination is screwing up the render order.
Sorry, but I'm afraid we do not have a solution for this currently. As it is a (in my pov) minor nuisance, this is not going to get a lot of priority from our side to investigate further on. I'm labeling it with community-contribution. If anyone wants to pick this up, that would be great.
Note that if you click on the Weather link when the page is already loaded, it does show the expected behavior,
🐛 Bug Report
A StreamRendering parent that updates a Param that it passes to a WASM child component doesn't update/rerender appropriately with incremental updates. I'm using an async enumerable; in my repro I slow it way down to illustrate.
💻 Repro or Code Sample
Code Repro Github
Here is the parent weather page that is stream rendered.
Weather.razor
Here is the WASM child component. Without the tabs, just the grid by itself, or a vanilla usage of just rendering a plain list, it works fine and updates smoothly as data is streamed in.
With the Tab component un-commented, it renders initially but doesn't handle updates well, flickers until all data is settled.
WeatherComponent.razor
🤔 Expected Behavior
Tabs shouldn't have unique rendering properties in relation to streaming updates.
😯 Current Behavior
Without the tabs:
Without.Tab.mp4
With the tabs:
WithTab.mp4
💁 Possible Solution
I'm guessing it has something to do with JavaScript and web components.
🔦 Context
I'm trying to find the ideal way to do pre-rendering, but avoid flickers and double renders. SSR with Stream rendering as much as possible, with isolated WASM for interactive components that have props passed to them by parents works pretty great, avoiding using a web api on the client as much as possible. Data fetched on server and serialized automatically as [Parameter].
🌍 Your Environment
The text was updated successfully, but these errors were encountered: