javascript - 在 Blazor 中从 appsettings.json 获取设置到 afterStarted(options) | Blazor 服务器

标签 javascript blazor appsettings onstart

我想在 JS 中设置变量 (someFlag = false/true),这样我就可以禁用/启用 javascript 函数。

我想用 afterStarted(options) [在下面的链接中描述]来做到这一点。

https://learn.microsoft.com/en-us/aspnet/core/blazor/javascript-interoperability/?view=aspnetcore-6.0#javascript-initializers

问题是:

有什么方法可以从 appsettings.json 获取数据以在 afterStarted(...) 中运行。通过选项参数或其他方式,都没有关系。

谢谢。

最佳答案

也许将 IConfiguration 注入(inject) blazor 页面?

@inject IConfiguration _configuration


protected override afterStarted(){
    var somevariable = _configuration["othervariable"];
}

如果做不到这一点,我会创建一个带有接口(interface)的对象,例如 ApplicationState,在 Program.cs 中将其设为作用域服务,定义对象的属性,然后将该接口(interface)注入(inject)您的 blazor 页面:

程序.cs

builder.Services.AddScoped<IApplicationState, ApplicationState>();
var applicationState = app.Services.GetRequiredService<IApplicationState>();
applicationState.someVar = builder.Configuration["SomeVar"];

闪电

@inject IApplicationState _applicationState

protected override afterStarted(){
    var somevariable = _applicationState.someVar;
}

希望对你有帮助

关于javascript - 在 Blazor 中从 appsettings.json 获取设置到 afterStarted(options) | Blazor 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72373769/

相关文章:

svg - Blazor/SVG 实时更新

c# - 如何使用 Blazor 服务器正确操作 EditContext 中的验证消息

asp.net - 在哪里存储应用程序设置?

c# - ASP.Net JSON 配置文件用数组转换

android - 如何在 Android 中以编程方式将手机置于飞行模式?

javascript - 元素创建后立即删除自身

javascript - Web Audio API 循环与 SVG 动画同步

JavaScript | JSON 对象按值合并和排序

c# - 在 Blazor 的客户端上播放声音?

javascript - 在 ARToolkit 中更改方形标记的默认边框粗细