ฉันแยกโค้ดเทมเพลตตัวอย่างจากบทช่วยสอนนี้และดำเนินการด้านล่างสองขั้นตอนเพื่อเริ่มต้น -
npm install // worked fine and created node_modules folder with all dependencies
npm start
// ล้มเหลวโดยมีข้อผิดพลาดด้านล่าง -node_modules/rxjs/Subject.d.ts(16,22): error TS2415: Class 'Subject<T>' incorrectly extends base class 'Observable<T>'. Types of property 'lift' are incompatible. Type '<T, R>(operator: Operator<T, R>) => Observable<T>' is not assignable to type '<R>(operator: Operator<T, R>) => Observable<R>'. Type 'Observable<T>' is not assignable to type 'Observable<R>'. Type 'T' is not assignable to type 'R'. npm ERR! code ELIFECYCLE npm ERR! errno 2
ฉันเห็นว่าในการประกาศเรื่องการยกของ subject.d.ts มีดังต่อไปนี้ -
lift<T, R>(operator: Operator<T, R>): Observable<T>;
และใน Observable.ts กำหนดไว้ดังต่อไปนี้ -
lift<R>(operator: Operator<T, R>): Observable<R> {
หมายเหตุ: - 1. ฉันยังใหม่กับ Angular2 และพยายามยึดสิ่งต่างๆ
ข้อผิดพลาดอาจเกิดจากคำจำกัดความของวิธีการยกที่เข้ากันไม่ได้
ฉันอ่านกระทู้ Githubนี้
หากฉันต้องการติดตั้ง rxjs เวอร์ชันอื่นโปรดบอกวิธีถอนการติดตั้งและติดตั้ง rxjs ที่ถูกต้อง
Edit1: ฉันอาจจะสายไปนิดในการตอบสนองที่นี่ แต่ฉันยังคงได้รับข้อผิดพลาดเดียวกันแม้หลังจากใช้typescript 2.3.4หรือrxjs 6 อัลฟา ด้านล่างนี้คือ package.json ของฉัน
{
"name": "angular-quickstart",
"version": "1.0.0",
"scripts": {
"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ",
"lite": "lite-server",
"postinstall": "typings install",
"tsc": "tsc",
"tsc:w": "tsc -w",
"typings": "typings"
},
"license": "ISC",
"dependencies": {
"@angular/common": "2.0.0",
"@angular/compiler": "2.0.0",
"@angular/core": "2.0.0",
"@angular/forms": "2.0.0",
"@angular/http": "2.0.0",
"@angular/platform-browser": "2.0.0",
"@angular/platform-browser-dynamic": "2.0.0",
"@angular/router": "3.0.0",
"@angular/upgrade": "2.0.0",
"core-js": "^2.4.1",
"reflect-metadata": "^0.1.3",
"rxjs": "6.0.0-alpha.0",
"systemjs": "0.19.27",
"zone.js": "^0.6.23",
"angular2-in-memory-web-api": "0.0.20",
"bootstrap": "^3.3.6"
},
"devDependencies": {
"concurrently": "^2.2.0",
"lite-server": "^2.2.2",
"typescript": "2.3.4",
"typings": "^1.3.2"
}
}