2017-02-22 31 views
3

Я новичок в Node.JS. Я нашел несколько статей говорит, что мы можем использовать .env файл установки с переменной process.env, например,Как установить process.env из файла в NodeJS?

PORT = 8081 

но при запуске программы в моем узле, он по-прежнему 8080 PORT (по умолчанию). Вопрос в том, как настроить переменную env в узле без помощи других сторонних модулей? (Я обнаружил, что есть несколько сторонних пакетов для управления конфигурацией env, но ... это смущает, другой пакет может иметь разные правила и более сложные варианты использования, я хочу начать с четкого способа изучения чисто nodejs)

Update

Я прочитал узел окружающей среды Настройка пост на StackOverflow, но они обратитесь с использованием пакета 3 участника, ни один из них не говорит шаги подробно. (Либо окна среды системы, или переменные окружения Linux ... но как я могу поместить установку в мою папку проекта ?!)

+1

Вы можете здесь: http://stackoverflow.com/questions/22312671/node-js-setting-environment-variables Надеемся на помощь u! – NguyenTungs

+0

Возможный дубликат [Node.js: Изменение переменных среды] (http://stackoverflow.com/questions/22312671/node-js-setting-environment-variables) –

+0

@TungNguyen Я прочитал эту статью, но они ссылаются на использование Сторонний пакет, ни один из них не сообщает подробные шаги. (Либо системная среда Windows, либо переменные среды Linux ... но как я могу поместить этот параметр в мою папку проекта?) –

ответ

3

Dotenv файл стал самым популярным способом отделить configuratione от приложения, используя системные переменные окружения (см 12factor config).

На узле существует множество библиотек для загрузки конфигурации из файла .env. Наиболее популярным является motdotla/dotenv. Вы можете прочитать много примеров в файле readme об использовании этой библиотеки

+0

Спасибо @ DanielNetto: D –

+0

очень правильно. '.env' - лучший способ для установки переменной окружения. Смотрите https://gist.github.com/Robophil/94c8577f34e46e7e0b09d218c7ae9bf2 все благодаря elliot –

2

Сделать config.js файл со следующим содержанием:

module.exports = { 
    bar: 'someValue', 
    foo: 'otherValue' 
    ... 
} 

Тогда вы можете сделать это в некотором файле:

const config = require('./config'); 
let foo = config.foo; 
+0

В моей системе есть объект process.env (я не знаю, откуда он, это ключ проблема). Он находится на машине c9.io. –

+1

process.env это псевдоним, чтобы получить переменные окружения! – jesusgn90