如何在 dart/flutter 模块中仅导入特定的方法或类

Kos*_*meg 1 import dart flutter

我只想导入我感兴趣的类/方法,而不是整个模块。我正在寻找相当于 python 语句的 dartfrom module import method/class或相当于import module.method

Kos*_*meg 8

背景

在 Flutter Journey 的两天后,我面临着一个挑战,即我的 android 应用程序对可以导入的方法数量的限制。此错误称为 64K 错误。android 团队为避免此错误给出的建议之一是避免将不必要的方法导入应用程序。

所以我需要有选择地只导入我需要的方法和类,而不是整个模块。我找不到出路,所以我来到这里找一个,但找不到任何彻底的出路。所以我提出了自己的问题。只有在此之后,自动化系统才找到准确回答问题的类似问题。问题是,问题的措辞使它不那么容易找到。所以我用一个更好的标题来写这篇文章,希望能让其他人在未来更容易找到。

回答

因此,您只想导入包或模块中的众多方法/类中的一两个?

使用通常的导入格式并添加show后跟以逗号分隔的所需方法列表。例子:

import 'package:packageName/filename.dart' show class1, class2, method1;
Run Code Online (Sandbox Code Playgroud)

但是,如果您希望从包中获取非常少的方法,则此方法很有用。

相反,如果您需要的方法数量很多,则无法列出所有方法。但是,如果您知道哪些不需要,那么您可以使用相同的格式排除它们,但将show替换为hide并列出您不需要的;

import 'package:packageName/filename.dart' hide class1, class2, method1;
Run Code Online (Sandbox Code Playgroud)

我希望这个答案对某人有所帮助;