TX032
טעינת ה-WebAssembly של Yoga נכשלה
למה זה קורה
initYoga() טוען את ה-WebAssembly של Yoga מקובץ .wasm באפליקציות Text.js (text dev, text build), בבניות שמגדירות את תנאי הפתרון @textjs/client, וכאשר מעבירים initYoga({ wasm }). הבקשה נכשלה, החזירה סטטוס שגיאה, או שהתוכן שהוחזר לא היה WebAssembly תקין. השגיאה מציינת את כתובת ה-URL ואת ה-Content-Type שהשרת שלח. הסיבות הנפוצות הן שרת שמחזיר דף HTML חלופי בתגובה לכתובת ה-URL של קובץ ה-.wasm, ומדיניות אבטחת תוכן ללא 'wasm-unsafe-eval' בתוך script-src.
איך לתקן
יש להגדיר את כתובת ה-URL שמופיעה בשגיאה כך שתחזיר את הקובץ עם Content-Type: application/wasm, כדי שיתקמפל בזמן ההורדה. כלל שכתוב שמגיש את index.html עבור נתיבים לא מוכרים חייב לדלג על /assets/. יש לאפשר WebAssembly במדיניות אבטחת התוכן:
Content-Security-Policy: script-src 'self' 'wasm-unsafe-eval'; connect-src 'self'אם מחברים את המסוף עצמאית ומגישים את הקובץ ממיקום אחר, יש לקרוא ל-initYoga() עם כתובת ה-URL שלו, הבתים שלו או WebAssembly.Module מקומפל לפני createConsoleRoot(). רק הקריאה הראשונה טוענת את Yoga:
import { initYoga } from "@textjs/core";await initYoga({ wasm: "/yoga.wasm" });ראו WebAssembly.