如何在Flutter中导入目录/软件包

时间:2019-07-17 12:23:03

标签: flutter import package

我有以下进口商品

import 'package:redacted/Pages/BasePage.dart' as Pages;
import 'package:redacted/Pages/FreeText.dart' as Pages;
import 'package:redacted/Pages/Generic.dart' as Pages;
import 'package:redacted/Pages/Numeric.dart' as Pages;
import 'package:redacted/Pages/Identity.dart' as Pages; 

我想做这样的事情

import 'package:redacted/Pages' as Pages;

所以我可以在代码中执行以下操作:Pages.GenericPages.Numeric

如果您对这5个为什么感兴趣,这里至少有一个。我正在使用相同名称但内容不同的其他类。

import 'package:redacted/Content/BaseContent.dart' as Content;
import 'package:redacted/Content/FreeText.dart' as Content;
import 'package:redacted/Content/Generic.dart' as Content;
import 'package:redacted/Content/Numeric.dart' as Content;
import 'package:redacted/Content/Identity.dart' as Content; 

内容是页面的内容,页面是页面的UI。在有问题的文件中,我需要两个导入,这是我要进行内容页面匹配的地方。所以我需要能够区分。

理想情况下,我只需要输入Content.FreeTextPages.FreeText即可,但是现在我需要在每次导入时分别添加as Pagesas Content ,除了必须手动导入所有内容。

是否可能出现以下类似情况?

import 'package:redacted/Pages' as Pages;
import 'package:redacted/Content' as Content;

1 个答案:

答案 0 :(得分:3)

您可以创建一个“索引”文件,该文件导出要捆绑的所有类。

例如redacted/Content/screens.dart

export 'BaseContent.dart';
export 'FreeText.dart';
export 'Generic.dart';
export 'Numeric.dart';
export 'Identity.dart';

一旦有了,就可以通过以下方式导入它:

import 'package:redacted/Content/screens.dart' as Screens;

这与您create a Dart library package的方式非常相似。