Dart的EventSource错误

时间:2012-08-07 11:33:39

标签: dart event-sourcing

我正在尝试使用Dart的EventSource。

var source = new EventSource('/myUrl');
source.on.error.add((Event e) => print('error'));
source.on.message.add((MessageEvent me)  => print(me.data));

邮件很受欢迎,但“错误”始终是打印的。 如何获得有关此错误的更多信息? 我尝试使用ErrorEvent而不是Event,但它失败了,因为此事件不是ErrorEvent

1 个答案:

答案 0 :(得分:1)

我没有要测试的事件来源,但我可以帮助您回答您的问题,"如何获得有关此错误的更多信息?"

更改:

source.on.error.add((Event e) => print('error'));

要:

source.on.error.add((e) {
  print('error');
});

然后,在打印行上设置断点。这将允许您在Dartium中调试应用程序时检查局部变量e。

您还可以使用dart2js将应用程序编译为JavaScript和Chrome的JavaScript调试器,以了解有关e的更多信息。搜索"错误"在调试器中生成的JavaScript中,找出放置断点的位置。

另一个有时有用的技巧是将代码更改为:

source.on.error.add((int e) => print('error'));

e不是int,所以DartEditor会给你一个警告,告诉你e的类型是什么。然后,您可以使用该类型。接下来,按住Command键并单击该类型以查看其源代码。

我最好的建议是尝试使用Chrome的JavaScript调试器并从那里调试问题。这帮助我在过去解决了这类问题。