对dartlang的REPL

时间:2013-08-07 17:23:50

标签: dart dart-mirrors

是否有Dart的REPL进行实验?

我尝试在Dartium的devtools中输入dart代码,但这也无效。

所以我找不到在dart中使用各种AP​​I的简单方法。

4 个答案:

答案 0 :(得分:13)

  

我尝试在Dartium的devtools中输入dart代码,但也没有   工作

我对Dart很新,但我遇到的是你可以评估Dartium中的代码。为此,您必须首先加载包含Dart代码的页面,然后在控制台中将此选择器从“javascript页面上下文”切换为引用Dart包或Dart代码的页面。

enter image description here

一旦你这样做,你应该能够在控制台中执行Dart:

enter image description here

作为VIM用户,我现在几乎不必打开Dart编辑器:)。我还应该提一下,断点,徘徊在代码中以获取变量细节,导航调用堆栈,以及控制台中的某种级别的智能感知也可以工作。但是,我无法让条件断点工作。

答案 1 :(得分:4)

虽然它不是真正的REPL,但您可能会发现Try Dart在线工具对于玩游戏很有用。它有点慢,因为它实际上是将Dart代码编译为JavaScript以使其在浏览器中工作。

还有一个人建造的console,如果你正在寻找一个真正的REPL,这可能会更好,但它需要一些设置。

答案 2 :(得分:4)

关于Dartium的REPL有一个公告 - 见Nathanial的评论如下。有超级REPL的Smalltalk计划。以下是Gilad Bracha(谷歌Dart团队成员)在Is there a REPL or console for Dart中就此主题所写的内容:

“我根本不认为这是一个语言问题。这是一个工具和反射库支持的问题。使用适当的镜像构建器API,构建一个REPL将是微不足道的。因为它现在正在发展,它可以是当然,REPL并不是最终的目标 - 有更高级的交互式工具,比如Smalltalk / Self / Newspeak中的工作空间,您不仅可以在某个顶层交互式地评估事物,还可以检查生成的对象,评估在个人声明或对象等范围内。我相信我们会及时到达那里 - 我更喜欢早于此。“

答案 3 :(得分:1)

正确答案是https://dartpad.dev/

当其他答案在2013年发布时,该站点不存在,但是您在2020年之后迷失了这个帖子。现在您知道了。 https://dartpad.dev允许您创建和共享新的Dart代码段,甚至可以将它们放入在线运行的Flutter应用程序中。非常非常酷!

enter image description here