【发布时间】:2020-05-25 19:14:04
【问题描述】:
我正在创建一个针对 Android/iOS 和 Web 的 Flutter 项目,有什么方法可以分别为 Flutter Mobile 和 Web 添加支持的包。例如,我在 Flutter 移动应用程序中使用 dart:io 包来保存文件,但在 Flutter web 中不支持它,所以对于 web,我使用 dart:js 包来下载 web 应用程序中的文件。
对于 C#,我们只是使用条件符号,但在 Flutter 中我找不到任何解决方案。
问题是我无法在 main.dart 文件中导入这两个包。谁能帮我实现这个目标
【问题讨论】:
-
您可以使用带有变量
kIsWeb的条件,然后使用正确的包。否则,您可以拆分文件以在两个文件中构建特定于平台的代码,并将可重用代码保留在当前文件中。 -
您可以查看此post,其中以示例进行说明。这与@Irn 在下面的回答一致。
标签: flutter dart flutter-web