Start Debugging

Тег: flutter-web

6 статей

CanvasKit или skwasm для Flutter web в 2026 году: какой рендерер выпускать?
Выпускайте skwasm через flutter build web --wasm, если ваши зависимости компилируются в Wasm: он загружает меньше и на тяжёлой сцене отрисовал на 36% больше кадров, чем CanvasKit. На Flutter 3.47.x оставайтесь в однопоточном режиме, пока исправление падения многопоточного режима на тексте не выйдет из beta.
Исправление: Text во Flutter рисуется за пределами экрана в Android WebView при включённом системном масштабе шрифта
Flutter web с 3.41 по 3.44 сообщает о переопределении высоты строки примерно в 625 раз, когда textZoom в Android WebView не равен 100. Обновитесь до 3.47 или сбросьте переопределение в MaterialApp.builder.
Исправление: Flutter web отдаёт устаревшую закешированную сборку после перезагрузки вкладки браузера
Перезагрузка перепроверяет только index.html, поэтому main.dart.js без хеша в имени продолжает браться из кеша браузера. Отдавайте результат сборки Flutter с Cache-Control: no-cache, проставляйте build id там, где заголовки задать нельзя, и позвольте самоочищающемуся service worker убрать кеши версий до 3.41.
Миграция веб-приложения на Flutter с dart:html на package:web и dart:js_interop
Пошаговая миграция с устаревших dart:html, dart:js_util и package:js на package:web 1.1.1 и dart:js_interop: как найти каждый проблемный импорт с помощью компилятора dart2wasm, что переименовывает dart fix, а что нет, ловушки JSImmutableListWrapper и innerHTML, и как проверить результат через flutter build web --wasm.
Как собрать веб-приложение Flutter с WebAssembly через flutter build web --wasm
Полное руководство по публикации веб-приложения Flutter, скомпилированного в WebAssembly, на Flutter 3.44: как выглядят две выпускаемые сборки, почему Firefox и Safari по-прежнему получают JavaScript из-за wasmAllowList в загрузчике, миграция с dart:html для dart2wasm, заголовки COOP/COEP, определяющие, работает ли skwasm в несколько потоков, и как в среде выполнения доказать, какую сборку реально загрузил браузер.