我正在使用node.js(espress)运行服务器。我已经定义了一个诊断/调试功能,我可以添加到任何控制器。该函数主要只是在控制台中打印出某些变量的值。
示例:
function ConsoleDebug(req, res) {
console.log(variable1)
console.log(req.someObject.otherObject.variable2)
}
并添加到控制器中,如下所示:
router.get('/URL', function(req, res, next) {
ConsoleDebug(req, res);
res.render('someview');
});
我想让整个诊断/探索过程更加动态,我已经阅读了很多关于Node.js REPL的好东西,我想我想在代码的任何一点运行它。
我已将它添加到ConsoleDebug()函数中,因此只要使用
触发路由器就可以运行它function ConsoleDebug(req, res) {
console.log(variable1)
console.log(req.someObject.otherObject.variable2)
repl.start({useGlobal: true})
}
它很好地开始,但它在启动时无法访问任何变量或范围。我想能够写
req.someObject.otherObject.variable2
并获得与
生成的输出相同的输出的console.log(req.someObject.otherObject.variable2)
最终,我希望能够使用REPL在代码中的任何位置动态修改任何其他node.js命令,关于它的启动范围,这样我就不必保持在ConsoleDebug()中重写代码,保存,重新启动服务器并观察结果。
这是否可行或是否有更合适的方法/工具?