TX032
Nie udało się załadować WebAssembly biblioteki Yoga
Przyczyna
initYoga() ładuje WebAssembly biblioteki Yoga z pliku .wasm w aplikacjach Text.js (text dev, text build), w kompilacjach ustawiających warunek rozwiązywania modułów @textjs/client oraz gdy przekażesz initYoga({ wasm }). Zapytanie nie powiodło się, zwróciło status błędu lub odpowiedź nie była poprawnym WebAssembly. Błąd podaje URL oraz Content-Type wysłany przez serwer. Typowe przyczyny to serwer, który pod adresem URL pliku .wasm zwraca zastępczą stronę HTML, oraz polityka Content Security Policy bez 'wasm-unsafe-eval' w script-src.
Rozwiązanie
Skonfiguruj adres URL podany w błędzie tak, aby zwracał plik z Content-Type: application/wasm, co pozwoli kompilować go podczas pobierania. Reguła przepisywania, która serwuje index.html dla nieznanych ścieżek, musi pomijać /assets/. Zezwól na WebAssembly w polityce Content Security Policy:
Content-Security-Policy: script-src 'self' 'wasm-unsafe-eval'; connect-src 'self'Jeśli samodzielnie montujesz konsolę i serwujesz plik z innego miejsca, przed createConsoleRoot() wywołaj initYoga() z adresem URL pliku, jego bajtami lub skompilowanym modułem WebAssembly.Module. Tylko pierwsze wywołanie ładuje Yoga:
import { initYoga } from "@textjs/core";await initYoga({ wasm: "/yoga.wasm" });Zobacz WebAssembly.