Razor 组件处理一组同步和异步生命周期方法中的 Razor 组件生命周期事件。 可以替代生命周期方法,以在组件初始化和呈现期间对组件执行其他操作。
生命周期事件
以下简化图展示了 Razor 组件生命周期事件处理。 本文以下部分中的示例定义了与生命周期事件关联的 C# 方法。
组件生命周期事件:
- 如果组件是第一次呈现在请求上:
- 创建组件的实例。
- 执行属性注入。 运行 SetParametersAsync。
- 调用 OnInitialized{Async}。 如果返回不完整的 Task,则将等待 Task,然后重新呈现组件。
- 调用 OnParametersSet{Async}。 如果返回不完整的 Task,则将等待 Task,然后重新呈现组件。
- 呈现所有同步工作和完整的 Task。
在呈现组件之前,在生命周期事件中执行的异步操作可能尚未完成。
父组件在其子组件之前呈现,因为呈现决定存在哪些子组件。 如果使用同步父组件初始化,则保证先完成父组件初始化。 如果使用异步父组件初始化,则无法确定父组件和子组件初始化的完成顺序,因为它取决于正在运行的初始化代码。