我对node.js相当新,并且有一个程序我必须设置一个环境变量才能运行(使用noble库,我的bash命令是:sudo NOBLE_HCI_DEVICE_ID=x node program.js
,to告诉我的代码使用哪个蓝牙适配器--HCI设备。
背后的原因是我有许多模块,每个模块都需要自己的蓝牙适配器,我希望在我的代码中指定每个模块应该使用哪个适配器。
我发现很多文章告诉我如何在我的代码中使用环境变量并通过命令行设置它们(process.env.VARIABLE_NAME),但没有告诉我如何在node.js中设置它们。
是否可以在我的node.js代码中设置环境变量?
答案 0 :(得分:36)
您不仅可以使用process.env
在节点中使用环境变量,还可以设置它们。这将在当前节点进程和它调用的任何子进程中设置变量,而不是调用shell本身。
// consume
var alreadySetEnvVarForDevice = process.env.NOBLE_HCI_DEVICE_ID
// set
process.env['NOBLE_HCI_DEVICE_ID'] = 1
答案 1 :(得分:-5)
在命令提示符下运行命令如下:
export FOREVER_ROOT=/var/log/
这里export设置了一个环境变量
或
执行" / etc / environment"在每个你想要更新变量的shell中:
$ / etc / environment
答案 2 :(得分:-5)
如果您使用express,可以将变量设置如下:
var express = require('express');
var app = express();
// set the environment mode, default is process.env.NODE_ENV
app.set('env','development');
app.get('env');
// => 'development'