BlazorWASMPWA找不到任何与选择器“app”匹配的元素
我使用的是 Visual Studio 2019 v16.8.5,并且在我最近升级到 .NET5 的解决方案中有一个 Blazor WASM PWA 项目。在此期间我让它运行,但最近我无法再启动它。
屏幕上显示正在加载...就是这样。控制台输出 (Firefox) 显示以下错误:Microsoft.JSInterop.JSException: Could not find any element matching selector 'app'.
在某些时候,它运行时没有出现此问题,但即使将解决方案恢复到较早的状态也不会带来任何变化,我仍然出现空白屏幕。
我发现一个 github 来源说“只是builder.RootComponents.Add<App>("app");从Program Main”中删除。如果我这样做,错误就会消失,我只会得到一个空白页面,上面写着正在加载...控制台输出中没有错误。
附加信息:我现在在 Visual Studio 中运行项目后执行完整的缓存清理(cookies 和网站文件),以防止出现任何缓存问题。
我做错了什么,看不到我的任何页面?即使在明确地称他们为https://192.168.188.31:5555/login?
回答
根据用于创建初始应用程序的模板版本,在index.html.
旧版本可能看起来像
<app>Loading...</app>
而新的应该喜欢
<div>Loading...</div>
如果第一个仍然为真,则相应的声明应为
builder.RootComponents.Add<App>("app");
第二行应该是
builder.RootComponents.Add<App>("#app");
第二个使用 id 选择器#。
通常,index.html被视为“静态”文件并由浏览器缓存。因此,您在该文件中所做的更改不会立即反映出来。禁用缓存的最简单方法是打开开发人员工具,转到网络选项卡并禁用缓存。