首页 > 解决方案 > How to rename classes with exports?

问题描述

I would like to make packages that do nothing besides exporting a few classes of another library under a different name.

In javascript I could do the following:

export { foo as bar } from 'package'

But I haven't found anything similar in dart

标签: dart

解决方案


Dart 中没有这样的东西。

Imports 只允许显示或隐藏导入库的成员或指定导入前缀。

我可以想象typedefs 最终会被扩展来做到这一点。

你可以做的是创建子类

class Dialog extends CupertinoDialog {}

在另一个图书馆

class Dialog extends MaterialDialog {}

条件导入可能会在某些时候扩展,以允许根据某些条件(可能只有构建时设置)导入一个或另一个库。
据我所知,目前它只允许区分 web、服务器、Flutter 等平台。


推荐阅读