是否可以在非 .NET 网站中嵌入 Blazor 组件?

tom*_*dox 8 blazor

我们想为我们的一个客户开发一个客户端 Blazor 组件,以嵌入到他们网站的页面中。该网站是用 Drupal 编写的,但我的问题实际上是指将 Blazor 集成到任何非 ASP.NET 网站中。

来自https://www.nativoplus.studio/blog/blazor-introduction/ 的这张图片似乎表明这应该是可能的,因为没有一个运行时部分依赖于 .NET 主机:

显示开发时间和运行时元素的 Blazor 架构图

据我了解,客户端 Blazor 组件使用 WASM 和 JavaScript 的组合进行互操作运行,因此似乎应该可以在任何网站上嵌入 Blazor 组件,而不仅仅是用 .NET 编写的网站?

(可能 Mono.wasm 也可能需要存在,我不确定它是否仅用于将我们的 C# 客户端应用程序编译为 wasm,或者在运行应用程序时是否也需要这样做?)

这在理论上是可能的,还是我错过了一些明显的东西,使它成为一个非首发?

如果是这样,任何人都可以举例说明我们需要告诉我们客户的网站公司将哪些文件添加到该站点以及这些文件应位于何处?

cod*_*ion 4

是的。这个有可能。一旦您使用生成的文件发布客户端 Blazor 应用程序,dotnet publish就可以从任何静态文件托管提供服务。http-server .例如,您可以使用发布结果的文件夹来提供结果。

要控制 Blazor 应用程序在最终 HTML 应用程序中可见的外观,您可以根据需要扩充 index.html。<app>标签将被 Blazor 应用程序取代。