2017-06-19 100 views
1

如果我开发一个Dart库,有没有一个成语transpile把Dart库改成一个JavaScript的吗?如何将Dart lib文件转换为JavaScript文件?

假设Dart库主要输出两件东西:一个类和一个函数。在JavaScript方面,JavaScript类/对象和函数是预期的。


UPDATE

我希望能在这种情况下得到解决:我在达特lib中定义一个类的ArrayList(指令和kerword 出口使用) ,然后我用一些方法将这个Dart lib转换为一个JavaScript库,其中有一些定义,如:function ArrayList(){...}。因此,在客户端JavaScript中,可以使用它:var a = new ArrayList()

回答

0
dart2js 
Usage: dart2js [options] dartfile 

Compiles Dart to JavaScript. 

Common options: 
    -o <file> Generate the output into <file>. 
    -c  Insert runtime type checks and enable assertions (checked mode). 
    -m  Generate minified output. 
    -h  Display this message (add -v for information about all options). 

如果你有一个pub package(带pubspec.yaml),那么你可以运行

pub build 

让整个包被transpiled为JavaScript(和变压器正在运行由一些框架中使用代码生成)

+0

谢谢GünterZöchbauer。我试过dart2js;所以,整个闭包调用是结果,我需要手动清理它?因为我没有在Dart文件中看到输出js中显示的类名称和函数名称或类似名称。 –

+0

不确定你的评论是关于什么的。输出不应该包含任何类。输出是ES5,树状摇动并最小化。 –

+0

我的意思是我在我的库上使用了dart2js,它的输出基本上是(function(){...})()。我的js在这里:https://repl.it/Iq37/0。 ArrayList是在我的lib中定义的类名。 –