Dziedziczne interfejsy API Mono i Emscripten JavaScript nie są eksportowane do globalnej przestrzeni nazw.
WebAssembly platformy Blazor nie eksportuje już przestarzałych interfejsów API Mono i Emscripten do globalnej przestrzeni nazw. Te interfejsy API są teraz dostępne za pośrednictwem obiektu Blazor.runtime
.
Wersja wprowadzona
Ogólna dostępność platformy .NET 9
Poprzednie zachowanie
Starsze wersje interfejsów API Mono (MONO
i BINDING
) oraz obiekt Emscripten Module
zostały wyeksportowane do obiektu globalnego window
. Na przykład window.Module.FS
zwrócił wirtualny system plików Emscripten.
Nowe zachowanie
Obiekt Module
Emscripten jest teraz eksportowany do obiektu Blazor.runtime
. Na przykład Blazor.runtime.Module.FS
zwraca wirtualny system plików Emscripten. Przestarzałe API Mono dla interoperacyjności (MONO
i BINDING
) zostało całkowicie usunięte i zastąpione JSImport
/JSExport
.
Typ zmiany łamiącej zgodność
Ta zmiana może mieć wpływ na zgodność źródła.
Przyczyna zmiany
Ta zmiana została wprowadzona, aby uniknąć zanieczyszczania globalnej przestrzeni nazw i zachować wszystkie interfejsy API dostępne z jednego obiektu Blazor.
Zalecana akcja
Zamiast uzyskiwać dostęp do interfejsów API programu Emscripten z obiektu window
, uzyskaj do nich dostęp z obiektu Blazor.runtime
.
Interfejsy API, których dotyczy problem
window.MONO.*
window.BINDING.*
window.Module.*