Flutter Web:使用 flutter build web 构建时缺少 main.dart.js 和 JavaScript 文件,但使用 flutter 运行 可以正常工作
Flutter Web: Missing main.dart.js and JavaScript files when building with flutter build web, but working fine with flutter run
我运行遇到 Flutter web 的一个问题,在任何项目中 运行 宁 flutter build web
时,都不会生成 JavaScript 文件,导致项目简单地载入空白页。
我目前使用的是 1.18.0 版 beta 频道,每个项目都会出现这种情况,即使是 Flutter 使用 flutter create .
生成的默认计数器项目也是如此。不会抛出任何警告或错误,如果我 运行 使用 flutter run --release -d chrome
的 Web 项目,一切都会按预期进行。
我已经按照文档中 Building a web application with Flutter 文章中描述的步骤进行操作,我记得半年前我能够按照相同的步骤使用 Flutter 构建和托管一个 Web 项目,没有任何问题.
我的 Flutter 配置和 SDK 似乎已经到位。这就是我 运行 flutter doctor -v
得到的结果
[√] Flutter (Channel beta, 1.18.0-11.1.pre, on Microsoft Windows [Versión 10.0.18363.836], locale es-ES)
• Flutter version 1.18.0-11.1.pre at D:\Programas\Flutter\flutter
• Framework revision 2738a1148b (4 weeks ago), 2020-05-13 15:24:36 -0700
• Engine revision ef9215ceb2
• Dart version 2.9.0 (build 2.9.0-8.2.beta)
[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at C:\Users\diego\AppData\Local\Android\sdk
• Platform android-28, build-tools 28.0.3
• Java binary at: D:\Programas\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
[√] Chrome - develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
[√] Android Studio (version 3.6)
• Android Studio at D:\Programas\Android Studio
• Flutter plugin version 46.0.1
• Dart plugin version 192.8052
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[√] Connected device (2 available)
• Web Server • web-server • web-javascript • Flutter Tools
• Chrome • chrome • web-javascript • Google Chrome 83.0.4103.61
这里可能有什么问题?为什么没有生成 JavaScripts 个文件?
请检查以下文件夹:
./your-app/build/web
我遇到了同样的问题,正在检查错误的文件夹 (./your-app/web
)。
对于无法打开构建版本的人:
从那里转到 'app/build/web' 和 运行 服务器 python -m http.server 8000
,或者使用 dhttpd 包
确保复制文件,来自:
./your-app/build/web
如果错误仍然存在,请更新 index.html
示例:
一种。我在网络服务器上的 flutter 项目:webserver/flutter_project/index.html
b.打开 index.html
C。将 <base href="/">
更新为 <base href="/flutter_project/">
对我有用的最简单的事情是更新到
<base href="./">
来自 <base href="/">
。所以当前路径而不是 root
就我而言 (IIS)。json 文件在我的目录中可用,但未由 Web 服务器发布。我必须添加 MIME 类型以允许它们。 .otf 文件的相同问题。
我运行遇到 Flutter web 的一个问题,在任何项目中 运行 宁 flutter build web
时,都不会生成 JavaScript 文件,导致项目简单地载入空白页。
我目前使用的是 1.18.0 版 beta 频道,每个项目都会出现这种情况,即使是 Flutter 使用 flutter create .
生成的默认计数器项目也是如此。不会抛出任何警告或错误,如果我 运行 使用 flutter run --release -d chrome
的 Web 项目,一切都会按预期进行。
我已经按照文档中 Building a web application with Flutter 文章中描述的步骤进行操作,我记得半年前我能够按照相同的步骤使用 Flutter 构建和托管一个 Web 项目,没有任何问题.
我的 Flutter 配置和 SDK 似乎已经到位。这就是我 运行 flutter doctor -v
[√] Flutter (Channel beta, 1.18.0-11.1.pre, on Microsoft Windows [Versión 10.0.18363.836], locale es-ES)
• Flutter version 1.18.0-11.1.pre at D:\Programas\Flutter\flutter
• Framework revision 2738a1148b (4 weeks ago), 2020-05-13 15:24:36 -0700
• Engine revision ef9215ceb2
• Dart version 2.9.0 (build 2.9.0-8.2.beta)
[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at C:\Users\diego\AppData\Local\Android\sdk
• Platform android-28, build-tools 28.0.3
• Java binary at: D:\Programas\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
[√] Chrome - develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
[√] Android Studio (version 3.6)
• Android Studio at D:\Programas\Android Studio
• Flutter plugin version 46.0.1
• Dart plugin version 192.8052
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[√] Connected device (2 available)
• Web Server • web-server • web-javascript • Flutter Tools
• Chrome • chrome • web-javascript • Google Chrome 83.0.4103.61
这里可能有什么问题?为什么没有生成 JavaScripts 个文件?
请检查以下文件夹:
./your-app/build/web
我遇到了同样的问题,正在检查错误的文件夹 (./your-app/web
)。
对于无法打开构建版本的人:
从那里转到 'app/build/web' 和 运行 服务器 python -m http.server 8000
,或者使用 dhttpd 包
确保复制文件,来自:
./your-app/build/web
如果错误仍然存在,请更新 index.html
示例:
一种。我在网络服务器上的 flutter 项目:webserver/flutter_project/index.html
b.打开 index.html
C。将<base href="/">
更新为<base href="/flutter_project/">
对我有用的最简单的事情是更新到
<base href="./">
来自 <base href="/">
。所以当前路径而不是 root
就我而言 (IIS)。json 文件在我的目录中可用,但未由 Web 服务器发布。我必须添加 MIME 类型以允许它们。 .otf 文件的相同问题。