Angular 8 и. NET Тип ядра 'Observable <Profile>' не может быть назначен типу 'Observable <IUser>' - PullRequest
0 голосов
/ 26 апреля 2020

У меня есть приложение в Angular 8 и. NET Core. Мое приложение сгенерировано на основе шаблона из Visualu Studio, поэтому авторизация также сгенерирована.

It has been working great but suddenly I get errors like that, when I started my application:
ERROR in api-authorization/authorize.service.ts:78:29 - error TS2345: Argument of type 'Profile' is not assignable to parameter of type 'IUser'.
  Property 'name' is optional in type 'Profile' but required in type 'IUser'.

78       this.userSubject.next(user.profile);
                               ~~~~~~~~~~~~
api-authorization/authorize.service.ts:89:31 - error TS2345: Argument of type 'Profile' is not assignable to parameter of type 'IUser'.

89         this.userSubject.next(user.profile);
                                 ~~~~~~~~~~~~
api-authorization/authorize.service.ts:115:29 - error TS2345: Argument of type 'Profile' is not assignable to parameter of type 'IUser'.

115       this.userSubject.next(user && user.profile);
                                ~~~~~~~~~~~~~~~~~~~~
api-authorization/authorize.service.ts:150:42 - error TS2339: Property 'data' does not exist on type 'SignoutResponse'.

150       return this.success(state && state.data);
                                             ~~~~
api-authorization/authorize.service.ts:195:5 - error TS2322: Type 'Observable<Profile>' is not assignable to type 'Observable<IUser>'.
  Type 'Profile' is not assignable to type 'IUser'.

Я помню, что я обновил angular материал и, вероятно, это все. Я не знаю, почему вдруг я получаю эти ошибки.

1 Ответ

0 голосов
/ 27 апреля 2020

Это решение моей проблемы: https://github.com/dotnet/aspnetcore/issues/17919

@ SyntaxWarrior - я столкнулся с той же проблемой. Я изменил его в своем пакете. json, но этого было недостаточно, потому что на него все еще ссылались (я предполагаю) через package-lock. json.

Команда, которую я выполнил, исправила это npm i oidc-client@1.9.1

Единственная проблема в том, что она дала мне совершенно новую огромную кучу ошибок, связанных с routerLink. Похоже, есть несколько мест, где RouterTestingModule необходимо импортировать в спецификации API-авторизации.

Проблема была в пакете oid c -client. В версии 1.10.1 есть Профиль. Мне пришлось перейти на версию 1.9.1, и теперь она работает.

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