This repository aims to investigate how certain features of the component model in blazor affect the performance in wasm scenarios
To test the performance of each Grid/Table, click on a row and observe the latency before it's marked as selected by the background-color style. Each component will calculate its latency and display the time elapsed in the console.
Ex:
WASM: Refresh Time 600
These are some times we recorded with our tests:
Components use only basic HTML/Razor and no additional framework features.
WASM: Refresh Time 800
Components use CascadingValue for parent > child support.
WASM: Refresh Time 1800
Components use basic [parameter] attributes to share values.
WASM: Refresh Time 1300
Components use splat attributes to share values.
WASM: Refresh Time 1400
Components use splat attributes and CascadingValues to share values. This combination seems to compound the latency problem.
WASM: Refresh Time 4100
Component is rendered through a single razor file.
WASM: Refresh Time 340
Component is rendered through a single razor file. Each cell has several event handlers attached.
WASM: Refresh Time 1200
Note: Time below is not reproduceable in this demo.
WASM: Refresh Time 964
Note: Time below is likely twice what is reported due to how calculations are performed in the demo.
WASM: Refresh Time 8500+