Node.js 如何调试yeoman应用程序?
在使用服务器端语言/平台(如java、python/django和php)开发web应用程序的背景下,我开始学习Node.js和yeoman。我认为能够调试服务器端代码是必要的,以便提高代码质量。节点支持通过节点检查器和--debug选项进行调试。但是,如果应用程序是使用生成器(比如AngularJS)从yeoman创建的,并使用grunt启动,那么有没有一种简单的方法来启用调试Node.js 如何调试yeoman应用程序?,node.js,debugging,angularjs,yeoman,Node.js,Debugging,Angularjs,Yeoman,在使用服务器端语言/平台(如java、python/django和php)开发web应用程序的背景下,我开始学习Node.js和yeoman。我认为能够调试服务器端代码是必要的,以便提高代码质量。节点支持通过节点检查器和--debug选项进行调试。但是,如果应用程序是使用生成器(比如AngularJS)从yeoman创建的,并使用grunt启动,那么有没有一种简单的方法来启用调试 也许我首先应该问一个更高层次的问题:如果yeoman推广(如教程中所述)AngularJS,这是一个客户端MVC框架
也许我首先应该问一个更高层次的问题:如果yeoman推广(如教程中所述)AngularJS,这是一个客户端MVC框架,那么大多数代码将从浏览器而不是节点运行。这就是为什么服务器端调试对yeoman不再重要,因此没有文档记录的原因吗?如果您使用
AngularJS
和Chrome
,您可以使用。在Yeoman项目中,您可以使用Grunt
检查您的应用程序:
grunt.initConfig({
...
express : {
options : {
port : process.env.PORT || 9000
},
dev : {
options : {
script : 'server.js',
debug : true //enable debugging
}
},
...
默认情况下,可以启动节点检查器在端口5858上进行调试
在Windows上,“path\to\global\npm”类似于“C:\Users{UserName}\AppData\Roaming\npm”
http://localhost:8080/debug?port=5858
npm install -g node-inspector
node-debug yo GENERATOR_NAME
它将打开一个带有初始断点的Chrome开发工具。我正在开发一个yemoan angular fullstack应用程序。我调试服务器端节点js应用程序代码如下
快递:{
开发人员:{
选项:{
脚本:“server/app.js”,
调试:正确
}
}
}
节点检查器
http://127.0.0.1:8080/debug?port=5858
。(如果您看到grunt控制台,您将看到节点调试器位于端口5858上)debugger
语句,强制节点在该点断开并等待检查节点检查器--无预加载将更快地加载节点检查器。首先在Gruntfile.js中启用调试模式
grunt.initConfig({
...
express : {
options : {
port : process.env.PORT || 9000
},
dev : {
options : {
script : 'server.js',
debug : true //enable
}
},
...
使用此命令保存并运行项目
grunt-service:debug
,现在您可以使用调试器代码>项目任何部分中的var。请参阅:如何使用节点检查器的一个示例。我的问题不是调试yeoman生成器,而是调试yeoman使用grant启动的webapp。@Fred如果是这样,那么你的问题根本就不是yeoman。了解要调试的内容:浏览器中的客户端代码或服务器端代码。使用grunt-service:debug
可能会有所帮助