Как создать конфигурацию сборки в проекте TypeScript? - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть тип сценария node.js , в котором есть несколько параметров в коде и в конфигурации json файлов , которые зависят от того, хочу ли я создатьразработка или выпускная версия.

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

Как мне поступить так, чтобы при передаче мне просто нужно было передать параметр и получить правильные значения в коде и правильные конфиги json (например, foo_dev.json и foo_release.json)?

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Вы можете использовать переменные среды.

Переменные среды доступны в nodejs / typescript в свойстве env или process (process.env).

import * as fs from 'fs';
//Print out all env vars
console.log(process.env)
// { MYCONFIGFILE: "foo_dev.json" }
const config = JSON.parse(fs.readFileSync(process.env.MYCONFIGFILE,'utf8'));

Различные операцииУ систем есть разные способы их настройки.
Вы можете использовать cross-env для устранения различий.

Здесь - это кроссплатформенное решение.

0 голосов
/ 26 сентября 2018

Я думаю, вам нужна среда, зависящая от конфигурации.Вот пример того, как это делается в проекте angular cli: https://github.com/angular/angular-cli/wiki/stories-application-environments

Аналогично для проекта nodejs: https://medium.com/@jinmatt/config-management-for-node-js-based-on-runtime-environment-variables-55b3c6d82f5c

...