node.js - 解释 'DEBUG=myapp:* npm start' 实际上在做什么

标签 node.js bash express command-line

Express 应用程序生成器的入门页面(位于 here )表示,如果使用 MacOS 或 Linux,则使用 $ DEBUG=myapp:* npm start 启动服务器。

这很好用,但我无法理解这条线的实际作用。我猜它会为变量 DEBUG 赋值,但在退出服务器后我运行了 echo $DEBUG 但它什么也没打印。我猜 : 在某种程度上是这里的关键,但我不清楚如何/为什么。

希望有人能帮我解决这个问题。

最佳答案

  • DEBUG=myapp:* npm start 由两部分组成。

  • 第一部分是DEBUG=myapp:*,第二部分是npm start

  • 您可以先在命令行工具中运行 DEBUG=myapp:*,然后 然后运行 ​​npm start

  • DEBUG=myapp:* 表示您告诉 nodejs 您想要打开日志记录以进行调试。

    • 请记住将 myapp 替换为您的应用名称。您可以在 "name" 属性下的 package.json 文件中找到您的应用程序名称。 enter image description here
    • myapp:*中的*表示查看Express中使用的所有内部日志
    • 如果您只想查看路由器实现的日志,请将 DEBUG 的值设置为 myapp:router。同样,要仅查看来自应用程序实现的日志,请将 DEBUG 的值设置为 myapp:application,依此类推。
  • npm start 告诉 npm 运行您在 package.json 文件中声明的 scripts,脚本名称称为 start enter image description here

  • Source: https://expressjs.com/en/guide/debugging.html

关于node.js - 解释 'DEBUG=myapp:* npm start' 实际上在做什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36240385/

相关文章:

javascript - React-select 未在请求负载中发送

node.js - 使用node js获取MongoDB服务器的日期

bash - bash 脚本中单个命令的 sudo

mysql - 通过终端将 sql 文件导入数据库。有没有办法为 "ERROR 1366 at line ***: Incorrect integer value: ' 设置默认值?

javascript - 如何使用 sailsjs-nodejs 连接/合并两个 json 对象

mysql - 在 Express 中使用带有 Json 的 MySQL 查询

javascript - 如何等待 Mongoose 搜索的返回?

node.js - npm 运行开发未定义 :1 issue on debian

linux - 我的 Linux 系统无法识别主机名。我该如何解决?

javascript - 将服务器移动到 CORS 位置时 Passport/Express session 身份验证中断