我搜索了很多,但仍然找不到解决方案。
这是我的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
中打印环境变量:
<div>
<pre>{{ environment }}</pre>
</div>
这是我将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
}
};
仍然无法正常工作。