如何从 Blazor 服务器调用 Google 跟踪代码管理器

Pau*_*erg 5 javascript blazor

我需要从我的 Blazor 服务器站点调用 google GTM 脚本。据我了解,通过架构,我可以\xe2\x80\x99t 在 Index.Razor 的 HTML 部分中进行脚本调用。我已经在同一个项目中调用了一个 Javascript 跟踪函数,覆盖了 Index.razor 中的 OnInitialized,并且工作正常,但是当我在 Google GTM 上尝试相同的解决方案时,它并没有被网站触发。

\n

我在 GitHub 中发现了一个已关闭的问题 16218(由 Steve Sanderson 关闭),同时尝试实施 BrainSlugs83 的建议。

\n

针对已解决问题提出的解决方案是创建一个共享组件,暂时抑制错误 BL999。在解决方案中,他提到我们可以在 HTML 中添加脚本。我已经尝试过,但仍然给我同样的错误,也许是因为我没有正确调用它。

\n

“像素”跟踪Javascript代码只是Javascript代码,GTM是一个Javascript函数。

\n

我需要知道如何从我的 OnInitialized 调用已关闭问题中提出的组件

\n
 JS.InvokeVoidAsync("pixel");  // this worked\n//JS.InvokeVoidAsync("GTM");  // this did not work\n////////////////////////////////////// ??NavManager.NavigateTo(GTM);\nvar uri = NavManager.ToAbsoluteUri(NavManager.Uri);\n//     userData.ParseUri(uri);\nbase.OnInitialized();\n
Run Code Online (Sandbox Code Playgroud)\n

如果社区中的任何人知道如何从 Blazor 服务器调用 GTM 脚本,请提供帮助。

\n

提前致谢。

\n

Gre*_*Gum 0

只需将标记的代码放入 _host.html 中即可。不要使用 JS 互操作,因为它位于 Blazor 服务器框架之外。