Blazor服务器应用程序+MAUI可以访问设备吗



在MAUI WebView中运行的Blazor服务器应用程序是否能够使用JS Interop之类的东西与本地设备交互?

当然,您不需要JS interop。它只是在平台上运行,所以你可以利用那里的一切。

根据您的体系结构和代码的结构,有多种方法可以实现。例如,如果它已经在Essentials中了,您可以添加.NET MAUI Essentials并使用这些API。我在这里有一个视频,代码在这里。

如果你真的需要做其他事情,你可以利用依赖注入。例如,在我链接的repo(主要是一个文件>新项目(中,您可以在MauiProgram.cs中看到WeatherForecastService是如何注册的:builder.Services.AddSingleton<WeatherForecastService>();

现在,在您的Blazor代码中,您可以让它通过@inject WeatherForecastService ForecastService注入,并将其用作:

@code {
private WeatherForecast[] forecasts;
private Location location;
protected override async Task OnInitializedAsync()
{
forecasts = await ForecastService.GetForecastAsync(DateTime.Now);
}
}

您可以通过这种方式创建自己的服务来访问平台传感器或API,像这样注入并从Blazor使用它。

相关内容

  • 没有找到相关文章

最新更新