目标
我想写一个 javascript 库(框架),但需要 OOP 和 mixins。
尝试使用 typescript ,但它不支持混入(手册上说支持,但编译器/规范没有任何与混入相关的内容)。
typescript
在 typescript 中,以下代码:
class Greeter {
greeting: string;
constructor(message: string) {
this.greeting = message;
}
greet() {
return "Hello, " + this.greeting;
}
}
编译为:
var Greeter = (function () {
function Greeter(message) {
this.greeting = message;
}
Greeter.prototype.greet = function () {
return "Hello, " + this.greeting;
};
return Greeter;
})();
然后客户可以简单地调用:
var greeter = new Greeter("world");
Dart
dart 可以做类似的事情吗?谁能告诉我怎么做?
主要目标是生成的 javascript 代码是可读的,最好将所有 dart 附加功能驻留在不同的脚本中。
我看过 this question和 this answer ,但似乎都没有产生可读的 JS 文件,就像上面的 typescript 示例一样。
最佳答案
正如@SetLadd 提到的 https://github.com/dart-lang/dev_compiler是为此目的而 build 的(除其他外)。一些人报告说他们已经能够在一段时间前产生可用的输出。
dev_compiler 有一个命令行工具dartdevc
。
- 安装 DART SDK
- 运行
pub global activate dev_compiler
- 运行
pub global run dartdevc -o out main.dart
或dartdevc -o out main.dart
(取决于您的路径设置)。 有关详细信息,请参阅 https://github.com/dart-lang/dev_compiler/blob/master/USAGE.md
关于javascript - dart 可以生成可读的 javascript 库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34866816/