旧式 Mono 和 Emscripten JavaScript API 未导出到全局命名空间

Blazor WebAssembly 不再将旧的 Mono 和 Emscripten API 导出到全局命名空间。 现在可通过对象访问 Blazor.runtime 这些 API。

已引入的版本

.NET 9 正式版

以前的行为

旧式 Mono API(MONOBINDING)和 Emscripten Module 对象已导出到全局 window 对象。 例如, window.Module.FS 返回 Emscripten 虚拟文件系统。

新行为

Emscripten Module 对象现在导出到 Blazor.runtime 对象。 例如, Blazor.runtime.Module.FS 返回 Emscripten 虚拟文件系统。 用于互操作的传统 Mono API(MONOBINDING)被完全删除,取而代之的是 JSImport/JSExport

破坏性变更的类型

此更改可能会影响 源兼容性

更改原因

进行了此更改以避免污染全局命名空间,并使所有 API 都可从单个 Blazor 对象访问。

无需从 window 对象访问 Emscripten API,而是从 Blazor.runtime 对象访问它们。

受影响的 API

  • window.MONO.*
  • window.BINDING.*
  • window.Module.*