1

我正在尝试npm install debug在我的节点服务器中使用。

var debugModule = require('debug');
var debugMainApp = debugModule('debugMainApp')

const express = require('express');

const app =  express();

const port ='3000';
const domain = 'localhost';

app.listen(port,domain,()=>{
     debugMainApp('Server started in port: ' + port + ' hostname: ' + domain);
});

debugMainApp('Server started in port: ' + port + ' hostname: ' + domain);没有打印任何东西到控制台。

我尝试
通过设置属性debugMain.enabled = true手动debugMainApp('Server started in port: ' + port + ' hostname: ' + domain);将以下内容打印到控制台来解决此问题:

mainApp Server started in port: 3000 hostname: localhost +0ms

据我了解,debugMain.enabled应在设置与字符串匹配的环境变量时自动设置此属性debugModule('this_String')

这是我设置环境变量并启动服务器的方法

$ DEBUG=debugMainApp & node server.js

但似乎后者没有正确设置环境变量。

问题

  1. 如果您认为我的环境变量理论是正确的。使用 GitBash 命令行设置环境变量的正确方法是什么?例如$ DEBUG=mainApp & node server.js
  2. 会不会是别的东西?

提前致谢。

更多相关信息:
我的操作系统: Windows 10
GitBash 版本: 2.13.0.windows.1 NodeJS
版本: 6.10.3

解析度 在此处输入图像描述

4

1 回答 1

2

& 将指示 bash 在后台启动进程。

正确的语法是:

DEBUG=mainApp node server.js

请参阅“为什么在 bash 中在命令之前设置变量是合法的?

一个简单的命令是一系列可选的变量赋值,后跟空格分隔的单词和重定向,并由控制操作符终止。

于 2018-02-19T20:55:42.920 回答