Dart:转换命令行应用程序

时间:2016-04-19 10:57:24

标签: dart

在运行变压器之前是否可以在命令行应用程序上运行变压器?

例如,如果我有一个混合在Observable类中的类。我想对其进行转换,以便将dirtCheck转换为ChangeNotifier。

holder.dart

class Member extends Object with ChangeNotifier {
  @observable
  String name = "";
}

class Holder extends Object with ChangeNotifier {
  Holder() {
  }

  @observable
  Member member = new Member();
}

pubspec.yml

transformers:
- observe:
  files:
    - bin/models/holder.dart

如果我从IntelliJ IDE运行此应用程序,它似乎不会在执行main.dart之前在其上运行转换器。

感谢。

1 个答案:

答案 0 :(得分:1)

Transfomers不适用于命令行应用。只有使用pub servepub build投放的代码才会运行并应用变换器。您的代码应该按原样在服务器/命令行上运行。没有必要运行变压器。

变换器用于观察以通过生成的代码替换dart:mirrors访问,以防止dart2js生成的JS的代码膨胀,但这在命令行上没有问题。