2017-11-03 67 views
0

我正在構建一個角度的應用程序,當我在本地機器上執行服務時,它可以正常工作。但在Firebase上部署應用程序後,它會導致錯誤。部署後的角度4應用程序不起作用

Unhandled Promise rejection: No provider for e! ; Zone: angular ; Task: Promise.then ; Value: Error: No provider for e! 
at k (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at E (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at t._throwOrNull (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at t._getByKeyDefault (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at t._getByKey (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at t.get (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at qe (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at t.get (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at Sn (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) 
at kn (vendor.e0a9c104ecc1b06ef61f.bundle.js:1) Error: No provider for e! 
at k (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:4823) 
at E (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:5050) 
at t._throwOrNull (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:72085) 
at t._getByKeyDefault (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:72418) 
at t._getByKey (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:71803) 
at t.get (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:70211) 
at qe (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:22155) 
at t.get (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:120927) 
at Sn (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:28914) 
at kn (https://lottery-management-system.firebaseapp.com/vendor.e0a9c104ecc1b06ef61f.bundle.js:1:27420) 

我經歷了應用程序,並尋找所有正在做出的承諾,並將它們評論出來,仍然給我錯誤。

由於代碼的縮小,很難追查到底發生了什麼。 當代碼被縮小時,是否有更簡單的方法來調試錯誤?還有什麼可能導致這個錯誤?

感謝您的幫助!

app.module.ts

import { BrowserModule } from '@angular/platform-browser'; 
import { NgModule } from '@angular/core'; 
import { FormsModule, ReactiveFormsModule } from '@angular/forms'; 
import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; 
import { HttpModule } from '@angular/http'; 

import { AppComponent } from './app.component'; 
import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; 
import { MdButtonModule, MdCardModule, MdMenuModule, MdToolbarModule, 
      MdTabsModule, MdIconModule, MdSidenavModule, 
      MdInputModule, MdCheckboxModule, MdTooltipModule, MdGridListModule } from '@angular/material'; 
import { AboutComponent } from './about/about.component'; 
import { HeaderComponent } from './header/header.component'; 
import { routes } from './app.routes'; 
import { SettingsComponent } from './settings/settings.component'; 
import { BookComponent } from './book/book.component'; 
import { ShiftComponent } from './shift/shift.component'; 
import { ScanComponent } from './scan/scan.component'; 
import { Settings } from './settings/settings'; 
import { SettingsService } from './services/settings.service'; 
import { Book } from './book/book'; 
import { BookService } from './services/book.service'; 
import { ShiftService } from './services/shift.service'; 
import { Shift } from './shift/shift'; 
import { ScanService } from './services/scan.service'; 
import { ScanTicket } from './scan/scan-ticket'; 
import { AuthService } from './services/auth.service'; 
import { LoginComponent } from './login/login.component'; 
import { User } from './user/user'; 
import { AuthGuard } from './guards/auth.guard'; 
import { AuthRequestOptions } from './guards/auth-request'; 
import { RequestOptions } from '@angular/http'; 
import { AuthErrorHandler } from './guards/auth-error-handler'; 
import { ErrorHandler } from '@angular/core'; 
import { HomeComponent } from './home/home.component'; 
import { AuthInterceptor } from './guards/auth.interceptor'; 


@NgModule({ 
    declarations: [ 
    AppComponent, 
    AboutComponent, 
    HeaderComponent, 
    SettingsComponent, 
    BookComponent, 
    ShiftComponent, 
    ScanComponent, 
    LoginComponent, 
    HomeComponent 
    ], 
    imports: [ 
    BrowserModule, 
    BrowserAnimationsModule, 
    HttpModule, 
    HttpClientModule, 
    FormsModule, 
    ReactiveFormsModule, 
    MdButtonModule, 
    MdCardModule, 
    MdMenuModule, 
    MdToolbarModule, 
    MdIconModule, 
    MdSidenavModule, 
    MdTabsModule, 
    MdInputModule, 
    MdCheckboxModule, 
    MdTooltipModule, 
    MdGridListModule, 
    routes 
    ], 
    providers: [User, AuthGuard, AuthService, Settings, SettingsService, BookService, Book, ShiftService, Shift, ScanService, ScanTicket, 
    // { 
    // provide: RequestOptions, 
    // useClass: AuthRequestOptions 
    // }, 
    { 
     provide: ErrorHandler, 
     useClass: AuthErrorHandler 
    }, 
    { 
     provide: HTTP_INTERCEPTORS, 
     useClass: AuthInterceptor, 
     multi: true 
    }], 
    bootstrap: [AppComponent] 
}) 
export class AppModule { } 
+0

這是關係到node_modules'的'在一些錯誤的配置生產模式。任何錯誤,而AOT構建? – Aravind

+0

編譯時沒有錯誤。當我服務時,該應用在本地計算機上工作正常。 – Saurin

+0

如果您在本地計算機上執行'ng serve --prod',您是否看到相同的錯誤?此外,您仍然可以生成地圖文件,並使用構建中的命令行開關查看未分析的代碼。 – DeborahK

回答

0

上述問題正在角4.4.3感謝所致@yurzui指出這問題了。該問題與文件Zone.js有關。我能明白這一點通過構建感謝unabling的--sourcemaps true到@DeborahK

問題走的方式後,我升級到5.0.0角

相關問題