Нет поставщика для PlatformLocation - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь построить угловой модуль.Поэтому, когда я запускаю ng build pagination или ng serve, я не получаю ошибки.Но в браузере я получаю:

NullInjectorError: "StaticInjectorError (AppModule) [Location -> PlatformLocation]: StaticInjectorError (Platform: core) [Location -> PlatformLocation]: NullInjectorError: Нет поставщика для PlatformLocation!«

Вот как я называю свой модуль:

"angular-my-module": "file:../angular-my-module",

Конфигурация модуля внутри моего веб-приложения

import { AngularMyModule } from 'angular-my-module/dist/pagination';

@NgModule({
  declarations: [
    ...
  ],
  imports: [
    ...
    AngularMyModule
  ],
  providers: [
    ...
  ],
  bootstrap: [AppRootComponent]
})
export class AppModule { }

Вот как яЗвоню компоненту

<lib-pagination [data]="pagination"></lib-pagination>

Теперь мои файлы модуля

@NgModule({
  declarations: [PaginationComponent],
  imports: [
    CommonModule,
    RouterModule.forRoot([])
  ],
  exports: [PaginationComponent]
})
export class AngularMyModule { }

Компонент модуля:

@Component({
  selector: 'lib-pagination',
  ...
})
export class PaginationComponent implements OnInit, OnChanges {

  @Input() public data: Pagination;

  constructor(
    private router: Router,
    private route: ActivatedRoute,
    private location: Location,
    private paginationService: PaginationService) {

  }

Ищите эту ошибку, я не могунайти решение, так что я мог упустить?

angular: 8.2.4,

Ответы [ 2 ]

0 голосов
/ 20 сентября 2019

Я считаю, что нашел решение.

В этом выпуске проблема, похоже, связана, поэтому я попытался настроить tsconfig.json соответственно.

{  
  "compilerOptions": {
    ...
    "paths": {
      "@angular/*": [
        "node_modules/@angular/*"
      ],
      ...
    }
  },
  ...
}

Это было сделано в моем веб-приложении (AppModule), НЕ в моем модуле (AngularMyModule)

Больше нет ошибок консоли.

0 голосов
/ 19 сентября 2019

должно быть

providers: [PlatformLocation]

Это может помочь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...