Как передать переменные среды, определенные в app.yaml, в приложение angular 6? - PullRequest
0 голосов
/ 09 января 2019

Я ищу много, но все еще не могу найти решение для этого.

Вот мой app.yaml:

runtime: nodejs8
service: angular-apollo-starter
env_variables:
  NODE_ENV: production
  GRAPHQL_API_DOMAIN: www.domain.com/graphql
handlers:
  - url: /
    static_files: dist/angular-apollo-starter/index.html
    upload: dist/angular-apollo-starter/index.html
  - url: /
    static_dir: dist/angular-apollo-starter

Я пытаюсь объединить process.env с environment.prod.ts:

export const environment = {
  production: true,
  GITHUB_GRAPHQL_API_ENDPOINT: 'https://api.github.com/graphql',

  HOST: 'localhost',
  PORT: 4000,
  WS_PATH: '/subscriptions',
  GRAPHQL_PATH: '/graphql',
  ...process.env
};

Я печатаю переменные среды в app.component.html:


  {{ environment }}

Вот вывод после того, как я развернул приложение angular 6 на GAE:

{"production":true,"GITHUB_GRAPHQL_API_ENDPOINT":"https://api.github.com/graphql","HOST":"localhost","PORT":4000,"WS_PATH":"/subscriptions","GRAPHQL_PATH":"/graphql"}

Как видите, переменных окружения GRAPHQL_API_DOMAIN и NODE_ENV нет.

Я знаю, что process прокладка снята. Как я могу решить эту проблему?

обновление

Я добавляю ниже код в polyfills.ts:

(window as any).process = {
  env: {
    DEBUG: undefined
  }
};

Все еще не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...