【发布时间】:2021-05-24 01:32:13
【问题描述】:
我在 Blazor WASM 工作。我对在 Blazor 中创建新选项卡/窗口以及新选项卡的状态有一些疑问。
我通过 JSInterop 调用创建了一个新选项卡/窗口:
window.open('\anotherpage', windowName);
我希望新窗口是 Blazor WASM 沙盒的新实例。我注意到新实例似乎没有正确初始化。例如,如果我尝试访问在原始版本中有效的服务:
[Inject]
public SomeService someService { get; set; } //Singleton service started in program.cs
在原始版本中这显然有效,但在新版本中我得到一个访问 SomeService 的空异常。
这是否意味着新实例没有像通常那样初始化?我误解了这里发生的事情吗?有没有办法正确初始化服务,还是我只需要构建我需要的任何东西?
谢谢
【问题讨论】:
-
这是一个拼写错误:[Inject] public SomeService {get;set;}
-
我真的很惊讶它除了打开一个新的 空白 窗口/选项卡之外还能做什么。从文档中,“如果将空字符串 ("") 指定为 url,则会在目标浏览上下文中打开一个空白页面。”
标签: javascript blazor blazor-webassembly