Переменная окружения в Javascript (Gulp)

1

У меня есть локальная машина разработки и тестовый сервер. Теперь у меня есть APP_ID, который используется в Javascript. Я искал способы, которыми они могут отличаться на моей локальной машине и на тестовом сервере.

Использование Gulp

С помощью gulp можно добавить флаг в командной строке:

gulp build --env=production

Таким образом, я могу получить правильный APP_ID из файла. Единственная проблема заключается в этом подходе, мне нужно запустить мою сборку на сервере, на данный момент я запускаю gulp локально и загружаю изменения на свой сервер

Можно ли строить на сервере? Существуют ли другие способы использования переменных среды в Javascript?

Теги:
build
environment

1 ответ

0

Мое предложение состоит в том, чтобы не строить на сервере, а строить локально, а затем развертывать на сервере, используя одно из множества решений развертывания (например, deployer.org для php). Обычно javascript NPM-пакеты помещают вывод сборки даже в репозиторий GIT, готовый для использования в других проектах или для развертывания.

Для получения дополнительной информации о том, как использовать переменную env в узле (gulp run over node), см. Эту страницу

Например, в linux вы можете установить переменную env с помощью экспорта

app.js:

console.log(console.log(process.env.foo))

Затем попробуйте

> export foo=app1

> node app.js

Res: app1

Затем попробуйте

> export foo=app2

> node app.js

Res: app2

Это справедливо только в том случае, если вы запускаете серверный сервер на узле (ex gulp). Если вы разрабатываете библиотеку на стороне клиента и хотите создать разные сборки, предназначенные для разных окружений, вам нужно дать указание на это. В этом случае это руководство, которое может помочь вам

  • 0
    Спасибо за Ваш ответ. Я не понимаю, как я могу убедиться, например, на моем тестовом сервере, app_id = 2 и локально app_id = 1, потому что, если я собираюсь на своей локальной машине, это будет 1 в любом случае ..
  • 0
    обновить ответ, вы должны установить переменную env на сервере, а не в командной строке, которую вы используете для запуска gulp
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню