猿问

Angular找不到变量缓存

当我在本地运行时,我的 Angular 应用程序在所有内容上都运行良好,但如果我将其部署在 Heroku 上(在 Go 服务器中),则在 Chrome 和 Opera 上的 Angular 构建上禁用 aot(无论是在移动设备、linux 还是 osx 上),但它会引发错误关于野生动物园:


ReferenceError: Can't find variable: Cache

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


 main-es2015[...].js


[...], IP, KM, {

            provide: Cache, // error

            useClass: KM,

            multi: !0

        }],

对应app.module.ts部分


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}

  ],

缓存提供者不是多重的,使它成为多重的,但没有什么区别


倚天杖
浏览 106回答 1
1回答

潇湘沐

有一个变量名为:declare var Cache: {prototype: Cache; new():Cache}在lib.dom.d.ts文件中。我使用这个变量而不是我的cache.ts模型。我太傻了...如果您也有缓存模型,请将其放在 *.module.ts 文件的顶部import {Cache} from 'path-to-cache-file'
随时随地看视频慕课网APP

相关分类

Go
我要回答