javascript - 正确初始化由 JavaScript 创建的 Blazor 实例
问题描述
我在 Blazor WASM 工作。我对在 Blazor 中创建新选项卡/窗口以及新选项卡的状态有一些疑问。
我通过 JSInterop 调用创建了一个新选项卡/窗口:
window.open('\anotherpage', windowName);
我希望新窗口是 Blazor WASM 沙盒的新实例。我注意到新实例似乎没有正确初始化。例如,如果我尝试访问在原始版本中工作的服务:
[Inject]
public SomeService someService { get; set; } //Singleton service started in program.cs
在原始版本中,这显然有效,但在新版本中,我得到一个访问 SomeService 的空异常。
这是否意味着新实例没有像通常那样初始化?我误解了这里发生的事情吗?有没有办法正确初始化服务,或者我只需要构建我需要的任何东西?
谢谢
解决方案
看起来程序中的所有服务都是可用的,并且在 WASM 的所有重复实例中都进行了相同的初始化。我只是在那个特定页面上有一个初始化错误。
推荐阅读
- python - Django 2.0 联合提要不适用于 Wordpress 阅读器
- r - 两个过滤器的R Tibble:完成百分比,然后在同一行的另一列中缺失值
- java - 如何使用java通过计数从youtube播放列表中获取视频?
- java - 构建 maven spring boot 项目抛出错误
- wpf - 如何在 WPF 中的方法之间共享 UDP 客户端?
- android - 如何用两个不同的对象填充 ExpandableListView
- c# - SQL 异常没有被捕获为 SqlException
- entity-framework - 如何解决:事务操作无法执行异常
- ruby - 带有字符串的 Ruby if 语句总是转到第一种情况(不是 rails)
- node.js - 在 Express Js 应用程序中进行会话管理的最佳选择是什么?