angular universal declare - ERROR ReferenceError

时间:2018-06-05 15:01:19

标签: javascript angular typescript webpack angular-universal

我使用外部config.js文件,因为我不想为某些配置构建这么多版本。

例如,我有一个config.js文件:

资产/配置/ config.js

var apiUrl = 'http://example.com';

此文件已加载到 index.html 中,如下所示:

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Example</title>
    <base href="/">

    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="icon" type="image/x-icon" href="favicon.ico">

    <script src="/assets/config/config.js"></script>
</head>
<body>
    <app-root></app-root>
</body>
</html>

最后我必须在我需要使用的组件中声明它

declare var apiUrl: string;

@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
    styleUrls: ['./app.component.scss']
})
export class AppComponent {
    constructor() {
        //use apiUrl here
    }
}

到目前为止我没有任何问题,但现在我需要使用角度通用,现在 我懂了: ERROR ReferenceError:服务器端未定义apiUrl

另一个奇怪的事情是一切都运行2次(一次在服务器上,一次在浏览器中),在浏览器中它像以前一样工作。

你们中的一些人可能会问我为什么不使用环境来存储静态变量,并且可能会回答,我不想构建它的这么多版本,并且这个应用程序可以被许多具有不同后端的团队使用。

有解决方法吗?

0 个答案:

没有答案