Angular 找不到变量缓存



当我在本地运行时,我的 Angular 应用程序在所有内容上都可以正常工作,但是如果我在 Heroku 上部署它 - 在 Go 服务器中,aot 在 Chrome 和 Opera 上的 angular 构建上被禁用 - 无论是在移动设备、Linux 还是 OSX 上 - 但它在 safari 上抛出错误:

ReferenceError: Can't find variable: Cache

当我仔细查看错误时,我想它来自我的模块提供程序。因为它需要我:

main-es2015[...].js
[...], IP, KM, {
provide: Cache, // error
useClass: KM,
multi: !0
}],

相应的应用程序模块部分

providers: [
{provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true},
{provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptorService, multi: true},
{provide: HTTP_INTERCEPTORS, useClass: CachingInterceptor, multi: true},
ApplicationStateService,
CacheMapService,
{provide: Cache, useClass: CacheMapService, multi: true}
],

缓存提供程序不是多的,使它多,但没有区别

有一个名为的变量:

declare var Cache: {prototype: Cache; new():Cache}

lib.dom.d.ts文件中。我正在使用这个变量而不是我的cache.ts模型。我太傻了... 如果你也有缓存模型,把它放在你的 *.module.ts 文件的顶部

import {Cache} from 'path-to-cache-file'