Pie*_*nry 5 javascript debugging generator intellij-idea node.js
我正在使用Koa框架在Node JS中开发webapp.
所有流量控制都是使用生成器完成的,而不是回调.代码看起来是顺序的,但实际流程不是.无论如何,它看起来比回调地狱更清洁.
这是一个用koa编写的控制器函数的简单示例:
function *findUserById(userId)
{
var user = yield getUserOrError404(userId);
yield loadAdditionalData(user);
yield data.users.save(user);
return user;
}
Run Code Online (Sandbox Code Playgroud)
但是有一个难点:yield在我的IDE(IntelliJ IDEA)中单步执行代码并不能很好地工作.一旦执行与yield语句一致,如果我只是"跳过",执行流程就会从堆栈上升到koa代码(这实际上不是IDE的错,因为它只跟随生成器的实际执行流程, yield语句和Node事件循环).
目前我必须设置一个断点到我希望调试器暂停的下一个语句,经常是下一行,然后单击"恢复程序"按钮.
当有超过2-3个yield语句时,它会变得乏味.
是否有更好的方法(技巧,插件,......)逐步执行生成器密集的JS代码,允许跳过yield语句,好像它是一个"正常"的顺序语句?
| 归档时间: |
|
| 查看次数: |
1293 次 |
| 最近记录: |