dart - 通过Dart中的另一个库加载时,无法访问一个库的顶级例程

标签 dart libraries

说,我将这个脚本加载到浏览器中:

<script src='app.dart' type='application/dart'></script>

现在,在app.dart中,我有这个:

import 'library1.dart';
unleashTheKraken();

然后在library1.dart中,您会发现:

library library1;
import 'library2';

最后在library2.dart中,我们将拥有:

library library2;
unleashTheKraken() => print('Unleashing the Kraken')

结果是:Exception: No top-level method 'unleashTheKraken' declared.如何?

最佳答案

因为导入不会自动链接。您必须为此使用export语句。

library library1;

import "library2.dart";
export "library2.dart";

并且避免不必要的代码:importexport是完全独立的。如果您未在library1本身中使用unleashTheKraken,则可以省略import语句,而仅使用export。

关于dart - 通过Dart中的另一个库加载时,无法访问一个库的顶级例程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21058058/

相关文章:

android - 我如何将 Flutter (Dart) 连接到我的 Oracle 服务器?有人试过这个吗?

android - 如何在多个项目之间引用库

libraries - 没有书籍或教程的学习库

Angular 5 应用程序无法在 Firefox v48.0.1 或 < 50.0 中运行

android-studio - 如何使 Flutter 应用的 Navigation Drawer 透明?

dart - 清除/清空tbody元素的所有内容?

firebase - 如何从Flutter到本地云功能服务器进行HTTP POST

flutter - 为什么 “.where”方法不能通过我的List对象过滤?

android-studio - 无法使用 Apache POI 库运行 Android Studio 项目

ubuntu - 寻找源代码以学习编程