首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在应用程序中使用静态成员,该应用程序位于库的依赖项中

如何在应用程序中使用静态成员,该应用程序位于库的依赖项中
EN

Stack Overflow用户
提问于 2014-06-01 18:43:51
回答 1查看 83关注 0票数 0

我正在制作一个HTML5游戏引擎DartRocket,它依赖于StageXL。StageXL有一些类,其中充满了静态成员,我在游戏中需要它们中的一些。

我的问题是我可以在我的库(DartRocket)中使用这些静态成员,但是我无法从使用我的库的游戏中找到它们。基本上,因为我无法从游戏中看到我的库的依赖性。当我说游戏的时候,我指的是我图书馆里的一个例子。

我的问题是:我应该如何访问这些静态成员?

我想到了一些解决办法:

  1. 让用户导入StageXL以便他能够访问它们
  2. 将整个类复制粘贴到我的库中。
  3. 使用镜像API

我觉得第一个解决方案很愚蠢,因为用户必须导入StageXL,而且我的库已经依赖它了。

我使用第二个,因为我发现它很容易,我想对类进行更改,但这也不是理想的,因为如果库的依赖性发生了变化,我必须自己更新它。

我还没有尝试第三种解决方案,因为我并不真正喜欢使用镜像,因为它增加了代码的复杂性,并且使用基于成员的名称(String)。

一些无效的“解决方案”:

  1. 创建一个类实例(希望它能起作用是令人尴尬和愚蠢的:D)
  2. 扩展类(因为静态成员没有继承,所以无法工作)

你们觉得怎么样?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-01 19:04:36

如果在dart中有一个库,则可以重新导出其他库。

例如:

StageXL图书馆:

代码语言:javascript
复制
library stagexl;

// parts
// definitions
// ...

你的图书馆:

代码语言:javascript
复制
library dartrocket;

export 'stagexl.dart';

之后,您可以使用:

代码语言:javascript
复制
import 'dartrocket.dart';

SomeStageXLClass.method();

这样,用户就可以使用lib,也可以使用stagexl库中的方法和类。通过使用show关键字,还可以定义要导出的类。

向罗伯特问好

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

https://stackoverflow.com/questions/23983200

复制
相关文章

相似问题

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