Son*_*n04 7 prerender blazor blazor-server-side
OnInitializedAsync
有没有办法从生命周期方法中检测 Blazor 组件中是否正在进行预渲染?我知道组件工作流程会调用OnInitializedAsync
两次,第一次用于预渲染,第二次用于实际渲染。最后,OnAfterRenderAsync
一次性调用该方法进行实际渲染。
但是,我需要检测OnInitializedAsync
. 这样我就可以在预渲染中进行一些更改,并在实际渲染中阻止它,反之亦然。
我检查了下面的 GitHub 问题,但没有有效的解决方案。我希望,它应该在像IsPrerendering
.
https://github.com/dotnet/aspnetcore/issues/17282
提前致谢。
没有内置 API,但您可以使用 HTTP 上下文来检测它。
我已将其包装在 nuget 包中
https://www.nuget.org/packages/PreRenderComponent
更新:
从这次起,情况发生了变化,虽然仍然没有 api 来检测这一点,但您应该只在调用 OnAfterRender/OnAfterRenderAsync 后执行外部调用(例如 JSInterop 和 HTTP 调用)。
如果您坚持这种模式,则无需了解预渲染状态。
归档时间: |
|
查看次数: |
4761 次 |
最近记录: |