【发布时间】:2013-12-12 18:08:49
【问题描述】:
对于一个项目,我正在导入一个库,但我不直接使用其中的任何类。目标是在运行时获取ClassMirror 以从中创建实例。所以我有类似的东西:
import 'controllers.dart';
main() {
ClassMirror controller = getClassFromString(libraryName: 'deck_app', className: 'HomeController');
InstanceMirror instance = controller.newInstance(new Symbol(''), []);
instance.reflectee.sayHey();
}
这给了我一个“未使用的导入”错误。 Idk 如果这被认为是一个错误。所以我问你:你认为这被认为是一个错误吗?如果没有,有没有办法可以抑制未使用的导入错误?
奇怪的是,我认为 Dart 会对源代码进行树摇动并删除未使用的导入代码,但事实并非如此。该库已正确导入且可用。
【问题讨论】:
-
“飞镖会摇树”是什么意思?摇树只能由缩小的 dart2js 完成?
-
嗯,好的。我认为这种事情也适用于 Dart VM(不会将无用的东西加载到内存中)。
-
dart2js 有一种输出 Dart 代码而不是 JavaScript 代码的模式。 AFAIK 这还处于早期阶段。
-
如果您使用符号而不是字符串,警告会消失吗?即#deck_app 和#HomeController?另外 - 有一个实验课可以让你控制摇晃树,叫做MirrorsUsed。
标签: dart dart-editor