首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dart中的命名导出

dart中的命名导出
EN

Stack Overflow用户
提问于 2021-12-01 07:05:10
回答 1查看 39关注 0票数 0

有没有办法在dart中使用命名导出?例如,我有一个具有以下结构的'my_types‘库:

代码语言:javascript
复制
lib
|  outside.dart
my_types
|  lib
|  |  main.dart
|  |  models.dart
|  |  repositories.dart

Models and repositories包含一些类:

代码语言:javascript
复制
// models.dart
abstract class ModelA {}
abstract class ModelB {}
代码语言:javascript
复制
// repositories.dart
abstract class RepositoryA {}
abstract class RepositoryB {}

在main.dart中,我可以导出以下文件:

代码语言:javascript
复制
// main.dart
export 'models.dart';
export 'repositories.dart';

并将其导入outside.dart中:

代码语言:javascript
复制
// outside.dart
import 'package:my_types/main.dart' show ModelA, RepositoryB;

class ModelAImpl implements ModelA {};
class RepositoryBImpl implements RepositoryB {};

但是有了大量的类,我最终会得到来自模型、存储库和其他类别的大量混合的类。

有没有可能这样做

代码语言:javascript
复制
// main.dart
export 'models.dart' as models; // just a pseudocode. there is no 'as' statement for exports
export 'repositories.dart' as repositories;

然后能够像这样导入它们,并在这个乱七八糟的地方保留一些结构:

代码语言:javascript
复制
import 'package:my_types/main.dart' show models, repositories;

class ModelA implements models.ModelA {};
class RepositoryB implements repositories.RepositoryB {};
EN

回答 1

Stack Overflow用户

发布于 2021-12-01 08:48:28

在dart中没有用于导出库的as关键字。但是,您可以使用show关键字控制要导出的元素。

这里有一个供参考的link

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70180230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档