Angular - "nie ma wyeksportowanego członka 'obserwowalnego'"

kod

informacje o błędzie

Kod maszynopisu:

import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { of } from 'rxjs/observable/of';
import { Hero } from './hero';
import { HEROES } from './mock-heroes';

@Injectable({
  providedIn: 'root'
})
export class HeroService {

  constructor() { }

  getHeroes(): Observable<Hero[]> {
    return of(HEROES);
  }

}

Informacje o błędzie:

Błąd TS2307: nie można znaleźć modułu 'rxjs-compat/Observable'. node_modules/rxjs/observable / of.d. ts (1,15): błąd TS2307: nie można znaleźć moduł "rxjs-compat / observable/of". src / app / hero.obsługa.ts (2,10): błąd TS2305: moduł '"F:/angular-tour-of-heroes/node_modules/rxjs/Observable" nie ma eksportowany członek "obserwowalny". src / app / hero.obsługa.ts (15,12): błąd TS2304: nie można znaleźć nazwy 'of'.

package.json Plik z wersją kątową:

wersja

Author: veben, 2018-04-15

14 answers

To może być pomocne w Angular 6 aby uzyskać więcej informacji, zapoznaj się z tym dokumentem

  1. rxjs: metody tworzenia, typy, harmonogramy i narzędzia
import { Observable, Subject, asapScheduler, pipe, of, from, interval, merge, fromEvent } from 'rxjs';
  1. rxjs / operatory : wszystkie operatory rurociągowe:
import { map, filter, scan } from 'rxjs/operators';
  1. rxjs / webSocket: implementacja web socket subject
import { webSocket } from 'rxjs/webSocket';
  1. rxjs / ajax : RX ajax realizacja
import { ajax } from 'rxjs/ajax';
  1. rxjs / testing : Narzędzia testowe
import { TestScheduler } from 'rxjs/testing';
 211
Author: Sanjeet kumar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-15 20:21:54

Najwyraźniej (jak wskazujesz w dzienniku błędów), po aktualizacji do Angular 6.0.0 rxjs-compat brakuje.

Uruchom npm install rxjs-compat --save, aby zainstalować. Powinien to naprawić.

 123
Author: pau,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-02 22:14:20

Wystarczy umieścić:

import { Observable} from 'rxjs';

Tak po prostu. Nic mniej więcej.
 110
Author: Marius Mielcarek,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-26 23:53:09

Zastąpiłem oryginalny kod import { Observable, of } from 'rxjs' i problem został rozwiązany.

Tutaj wpisz opis obrazka

Tutaj wpisz opis obrazka

 59
Author: Thomas Lee,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-04-15 09:31:16

Używasz RxJS 6. Just replace

import { Observable } from 'rxjs/Observable';
import { of } from 'rxjs/observable/of';

By

import { Observable, of } from 'rxjs';
 34
Author: veben,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-12 09:56:54

Spróbuj tego:

npm install rxjs-compat --save
 27
Author: Yogesh Kumar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-04-18 10:39:14

To co mi pomogło to:

  1. Pozbądź się wszystkich starych ścieżek importu i zastąp je nowymi takimi jak:

    import { Observable , BehaviorSubject } from 'rxjs';)

  2. Usuń node_modules folder

  3. npm cache verify
  4. npm install
 12
Author: Jackie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-11-18 13:55:48

Miałem podobny problem. Back-revving RXJS od 6.x do ostatnich 5.x release poprawiło to dla Angular 5.2.x.

Otwórz paczkę.json.

Zmień "rxjs": "^6.0.0", Na "rxjs": "^5.5.10",

Run npm update

 7
Author: Matthew Smith,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-01 21:10:16

Po Prostu Usuń /Observable z 'rxjs/Observable';

If you then get {[3] } Just put below line to thr terminal and press enter.

npm install --save rxjs-compat
 4
Author: Blasanka,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-10-08 10:53:44

Moja rezolucja dodała następujący import: import { of } from 'rxjs/observable/of';

/ Align = "center" bgcolor = "# e0ffe0 " / król Norwegii / / align = center / obsługa.ts po zmianie jest:
import { Injectable } from '@angular/core';
import { Hero } from './hero';
import { HEROES } from './mock-heroes';
import { of } from 'rxjs/observable/of';
import {Observable} from 'rxjs/Observable';

@Injectable()
export class HeroService {

  constructor() { }

  getHeroes(): Observable<Hero[]> {
    return of(HEROES);
  }
}
 2
Author: Mark Mishaev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-26 07:28:04

Komponent angular-split nie jest obsługiwany w Angular 6, więc aby był kompatybilny z Angular 6, zainstaluj następujące zależności w aplikacji

Aby to działało, dopóki nie zostanie zaktualizowane użyj:

"dependencies": {
"angular-split": "1.0.0-rc.3",
"rxjs": "^6.2.2",
    "rxjs-compat": "^6.2.2",
}
 2
Author: Manoj Gupta,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-03 09:36:20

W moim przypadku ten błąd miał miejsce, ponieważ miałem starą wersję ng cli w moim komputerze.

Problem został rozwiązany po uruchomieniu:

ng update

ng update @angular/cli

 0
Author: sebbab,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-03 15:52:37

Update angular-in-memory-web-api version. Domyślna wersja angular-in-memory-web-api zainstalowana podczas samouczka angular-tour-of-heroes wynosiła 0.4. W moim przypadku zadziałało jak urok. (Używając Angular 7 z RxJS 6)

npm i [email protected]
 0
Author: rtrigo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-02-05 16:17:44

Użyj return Observable.of(HEROES);

 -3
Author: Dominik Ernst,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-25 13:05:49