我需要向在应用程序启动时运行的 Blazor WASM 应用程序添加一些代码。我想调用 API 以获取一些设置,以便在应用程序的剩余生命周期中使用。
我已验证 API 配置正确且返回数据。
我尝试同时添加 MainLayout.razor.cs 和 App.razor.cs 以进行调用。
这些都不起作用。但是,当我将相同的代码添加到我的其他组件之一(如下)时,它工作正常。
public class ViewMenuModel : ComponentBase
{
[Inject] HttpClient Http { get; set; }
[Inject] AppState AppState { get; set; }
protected override async Task OnInitializedAsync()
{
Settings = await Http.GetJsonAsync<List<Settings>>("settings");
UpdateSettings(Settings);
}
protected void UpdateSettings(List<Settings> settings)
{
AppState.SetSettings(settings);
}
}
有没有可能我只是错过了一些东西?这种事情应该在 MainLayout 或 App 中工作吗?如果是这样,诀窍是什么?