Angular 6 ui-router выдает "Ошибка перехода" - PullRequest
0 голосов
/ 18 июня 2020

Работа над проектом Angular 6 с использованием angular / ui-router. Однако при создании моей собственной службы разрешения я получаю эту ошибку:

Transition Rejection($id: 0 type: 6, message: The transition errored, detail: Error: StaticInjectorError(AppModule)[kontentService]: 
  StaticInjectorError(Platform: core)[kontentService]: 
    NullInjectorError: No provider for kontentService!)

Ниже моя служба Resolver

import { Injectable } from '@angular/core';
import { KontentService } from './kontent.service';

@Injectable({
  providedIn: 'root'
})
export class AppResolveService implements Resolve<any> {
  pageConetnt: any;

  constructor(public kontentService:KontentService) { }

  resolve(route): Promise <any>{
    return  this.kontentService.deliveryClient.items()
    .type("page_home")
    .depthParameter(6)
    .toPromise()
    .then(response => {
      this.pageConetnt = response.items[0]; 
      console.log('respomnse::',response);
    })
  }
}

Ниже мой app.module.ts

const rootModule: RootModule = {

  states: [
    {
      name: "home",
      url: "",
      data:{message:'TEST'},
      component: HomeComponent,
      resolve: {
        pageContent: AppResolveService
      }

    },
    {
      name: "about",
      url: "/about",
      component: AboutComponent
    }
  ],
};
@NgModule({
  imports: [
    BrowserModule,
    RouterTestingModule,
    UIRouterModule.forRoot(
     rootModule
    ),    
  ],
  exports:[UIRouterModule],
  declarations: [
    AppComponent,
    FooterComponent,
    NavigationComponent,
    HomeComponent,
    SupportComponent,
    AboutComponent,
  ],
  providers: [KontentService,NavigationService,AppResolveService],
  bootstrap: [AppComponent]
})
export class AppModule {}

Чего мне не хватает в этой реализации, так как в настоящее время моя разметка отображается до того, как данные могут быть переданы из другой моей службы, что делает ее неопределенной при загрузке.

...