相关疑难解决方法(0)

避免在 Flutter Web 插件包之外使用纯 Web 库

我正在构建一个 Flutter 应用程序,我试图在网络上工作。其中一部分包含一些特定于 Web 的代码:

import 'dart:html' as html;
import 'package:flutter/foundation.dart';

class DownloadViewModel extends ChangeNotifier {
  static const String url = 'https://example.com/api/v1/app/myapp_1.0.0.apk';
  void onAndroidDownloadPressed() {
    html.window.open(url, 'AndroidApp');
  }
}
Run Code Online (Sandbox Code Playgroud)

但是dart:html导入会出现以下错误:

避免在 Flutter Web 插件包之外使用纯 Web 库

警告的较长版本如下所示:

避免使用网络图书馆,dart:htmldart:jsdart:js_util在颤振包不在网络插件。这些库在 Web 上下文之外不受支持;依赖于它们的功能在 Flutter mobile 中将在运行时失败,并且在 Flutter web 中通常不鼓励使用它们。

允许访问网络图书馆:

plugin packages that declare web as a supported context
Run Code Online (Sandbox Code Playgroud)

否则,不允许导入dart:htmldart:jsdart:js_util

这不仅仅是一个警告。这实际上阻止了构建 Android 或 iOS 应用程序(即使非 Web Flutter 应用程序无法访问此方法)。

我想出的唯一解决方案是在为 …

html dart flutter flutter-web

20
推荐指数
1
解决办法
5712
查看次数

标签 统计

dart ×1

flutter ×1

flutter-web ×1

html ×1