问题描述
我将在 vs 代码中编写 Flutter web。 在创建 Flutter 应用之前,我已经输入了以下命令。
Flutter channel beta
Flutter upgrade
Flutter config --enable-web
之后我通过
创建了一个Flutter web应用程序vsCode > Shift+Command+P > Flutter:New Application Project
在创建新的 Flutter Web 应用程序后,我在生成的示例代码中添加了一些日语和阿拉伯语文本。 使用 Shift+F5 或 F5 运行时不显示日语文本。
如果我使用以下命令从终端运行,则会显示日语和阿拉伯文本。
Flutter run -d chrome
但是,如果我不再在终端中按 'r' 或 'R',这将无法进行热重载。
有没有人遇到过这个问题并且有解决方案?
解决方法
按 F5 启动 Flutter 项目时,使用 dartdevc 编译器,但命令 flutter run -d chrome
使用 dart2js 编译器。
dartdevc 在画布 HTML 元素(使用 CanvasKit)上呈现文本并使用系统字体。
dart2js 将文本呈现为段落 HTML 元素,因此使用浏览器中的字体。
作为一种解决方法,您可以使用 a custom font,例如 Noto Sans JP。
有相关的issue。