舊版 Mono 和 Emscripten JavaScript API 未匯出至全域命名空間
Blazor WebAssembly 不再將舊版Mono和 Emscripten API 導出至全域命名空間。 這些 API 現在可透過 Blazor.runtime
物件存取。
引進的版本
.NET 9 GA
先前的行為
舊版Mono API(MONO
和 BINDING
)和Emscripten Module
對象已匯出至全域 window
物件。 例如,window.Module.FS
傳回 Emscripten 虛擬文件系統。
新行為
Emscripten Module
物件現在會匯出至 Blazor.runtime
物件。 例如,Blazor.runtime.Module.FS
會傳回 Emscripten 虛擬文件系統。 已完全移除舊版 Interop 的 Mono API(MONO
和 BINDING
),並以 JSImport
/JSExport
取代。
中斷性變更的類型
這項變更可能會影響 來源相容性。
變更的原因
這項變更是為了避免污染全域命名空間,並讓所有 API 都能從單一 Blazor 物件存取。
建議的動作
不要從 window
物件存取 Emscripten API,而是從 Blazor.runtime
物件存取它們。
受影響的 API
window.MONO.*
window.BINDING.*
window.Module.*