Kode skrip:
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);
}
}
info kesalahan:
kesalahan TS2307: Tidak dapat menemukan modul 'rxjs-compat / Observable'. node_modules / rxjs / observable / of.d.ts (1,15): error TS2307: Tidak dapat menemukan modul 'rxjs-compat / observable / of'. src / app / hero.service.ts (2,10): error TS2305: Module '"F: / angular-tour-of-heroes / node_modules / rxjs / Observable"' tidak memiliki anggota yang diekspor 'Diobservasi'. src / app / hero.service.ts (15,12): error TS2304: Tidak dapat menemukan nama 'of'.
package.json
file dengan versi Angular:
Jawaban:
Ini mungkin membantu dalam Angular 6 untuk info lebih lanjut merujuk Dokumen ini
sumber
Rupanya (seperti yang Anda tunjukkan di log kesalahan), setelah memperbarui ke Angular 6.0.0 rxjs-compat hilang.
Jalankan
npm install rxjs-compat --save
untuk menginstal. Haruskah memperbaikinya.sumber
Cukup cantumkan:
import { Observable} from 'rxjs';
Seperti itu. Tidak lebih atau kurang.
sumber
Saya mengganti kode asli dengan
import { Observable, of } from 'rxjs'
, dan masalahnya selesai.sumber
Anda menggunakan RxJS 6. Ganti saja
oleh
sumber
Coba ini:
sumber
Yang membantu saya adalah:
Singkirkan semua jalur impor lama dan ganti dengan yang baru seperti ini:
import { Observable , BehaviorSubject } from 'rxjs';)
Hapus
node_modules
foldernpm cache verify
npm install
sumber
Saya punya masalah serupa. Memperbaiki kembali RXJS dari 6.x ke rilis 5.x terbaru memperbaikinya untuk Angular 5.2.x.
Buka package.json.
Ubah
"rxjs": "^6.0.0",
ke"rxjs": "^5.5.10",
Lari
npm update
sumber
Hapus saja
/Observable
dari'rxjs/Observable';
Jika Anda mendapatkan
Cannot find module 'rxjs-compat/Observable'
begitu saja di bawah garis ke terminal thr dan tekan enter.sumber
Resolusi saya menambahkan impor berikut:
import { of } from 'rxjs/observable/of';
Jadi kode keseluruhan hero.service.ts setelah perubahan adalah:
sumber
Itu
angular-split
komponen tidak didukung di sudut 6, sehingga untuk membuatnya kompatibel dengan sudut 6 install berikut ketergantungan dalam aplikasi AndaAgar ini berfungsi sampai diperbarui gunakan:
sumber
Dalam kasus saya kesalahan ini terjadi karena saya memiliki versi lama ng cli di komputer saya.
Masalah terpecahkan setelah berjalan:
ng update
ng update @angular/cli
sumber
Perbarui versi angular-in-memory-web-api . Versi default angular-in-memory-web-api yang diinstal selama tutorial angular-tour-of-heroes adalah 0.4. Itu bekerja seperti pesona dalam kasus saya. (Menggunakan Angular 7 dengan RxJS 6)
sumber
menggunakan
return Observable.of(HEROES);
sumber