Jon*_*han 6 lazy-loading typescript webpack angular
我正在运行我的应用程序LiveCicle,当我导航到地图路线时,出现此错误:
\n\nERROR Error: Uncaught (in promise): TypeError: _angular_core__WEBPACK_IMPORTED_MODULE_1__.\xc9\xb5\xc9\xb5defineInjectable is not a function\nTypeError: _angular_core__WEBPACK_IMPORTED_MODULE_1__.\xc9\xb5\xc9\xb5defineInjectable is not a function\n at tm.service.ts:9\nRun Code Online (Sandbox Code Playgroud)\n\n这很奇怪,因为我将 tm 服务定义为路由模块中的提供者。
\n\n@NgModule({\n providers: [\n {\n provide:\n HTTP_INTERCEPTORS\n ,\n\n useClass: AuthInterceptor,\n multi: true\n },\n TicketMasterService\n ],\n})\nRun Code Online (Sandbox Code Playgroud)\n\nconst routes: Routes = [\n {path: \'map\', loadChildren: () => import(\'./event-map-page/event-map-page.module\').then(m => m.EventMapPageModule)},\n\n {path: \'**\', redirectTo: \'\', pathMatch: \'full\'},\n\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\nexport class AppRoutingModule { }\nRun Code Online (Sandbox Code Playgroud)\n\n我只在生产中遇到此错误。当我在本地运行时,一切正常。
\n\nimport { Injectable, OnInit } from \'@angular/core\';\nimport { HttpClient, HttpParams, HttpHeaders } from \'@angular/common/http\';\nimport { environment } from \'../../environments/environment\';\nimport { DataService } from \'../../services/dataService/data.service\';\nimport { TmEvent } from \'../../models/tmEvent/tm-event.model\';\n@Injectable()\nexport class TicketMasterService {\n noAuthHeader = { headers: new HttpHeaders({ \'NoAuth\': \'True\'})};\n private readonly TM_EVENTS = \'TM_EVENTS\';\n tmEvents: any = [];\n constructor(private http: HttpClient, private data: DataService) {\n }\n\n fetchTmData() {\n this.http.get(environment.apiBaseUrl + \'/ticketmaster-events\', this.noAuthHeader).subscribe(res => {\n this.getTheFields(res);\n });\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n
小智 1
@乔纳森你使用哪个角度版本?
当我更新到 Angular 8 时,我也遇到了类似的问题。
和您一样,我的应用程序在本地运行良好,但在生产中运行不佳。延迟加载或双击事件无法正常工作,并且应用程序引发了类似的错误。
在网上冲浪后,我找到了一些更新 Angular Core、cli 依赖项的解决方案。但没有一个解决问题。
就我而言,问题出在生产配置文件中,特别是 tsconfig.e2e.json 文件中。但还要检查 tsconfig.json 文件中的本地配置。
确保您将这些参数用于 Angular 8 或更高版本:
“模块”:“esnext”,“moduleResolution”:“节点”,“目标”:“es5”
我希望这对某人有用......
| 归档时间: |
|
| 查看次数: |
8596 次 |
| 最近记录: |