現在、Udemy の Angular の講座を受講しているのですが、サンプルアプリケーションでエラーが発生してしまいました。
以下が発生したエラーです。
$ npm start > angular-quickstart@1.0.0 prestart /Users/xxx/Desktop/quickstart > npm run build > angular-quickstart@1.0.0 build /Users/xxx/Desktop/quickstart > tsc -p src/ node_modules/@types/selenium-webdriver/index.d.ts(828,19): error TS1005: ',' expected. node_modules/@types/selenium-webdriver/index.d.ts(828,33): error TS1005: ',' expected. node_modules/@types/selenium-webdriver/index.d.ts(855,19): error TS1005: ',' expected. node_modules/@types/selenium-webdriver/index.d.ts(986,19): error TS1005: ',' expected. node_modules/@types/selenium-webdriver/index.d.ts(986,33): error TS1005: ',' expected. node_modules/@types/selenium-webdriver/index.d.ts(1011,19): error TS1005: ',' expected. npm ERR! code ELIFECYCLE npm ERR! errno 2 npm ERR! angular-quickstart@1.0.0 build: `tsc -p src/` npm ERR! Exit status 2 npm ERR! npm ERR! Failed at the angular-quickstart@1.0.0 build script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /Users/xxx/.npm/_logs/2018-10-12T08_48_35_997Z-debug.log npm ERR! code ELIFECYCLE npm ERR! errno 2 npm ERR! angular-quickstart@1.0.0 prestart: `npm run build` npm ERR! Exit status 2 npm ERR! npm ERR! Failed at the angular-quickstart@1.0.0 prestart script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /Users/xxx/.npm/_logs/2018-10-12T08_48_36_031Z-debug.log
調べてみたところ、TypeScript のバージョンが古いのが原因の模様です。
package.json
の TypeScript のバージョンを最新バージョンに変更します。
"typescript": "~2.1.0" ↓ "typescript": "~3.1.3"
それで、npm install
を実行後にnpm start
を実行すると、今度は以下のようなエラーが発生しました。
node_modules/rxjs/Subject.d.ts:24:5 - error TS2416: Property 'lift' in type 'Subject<T>' is not assignable to the same property in base type 'Observable<T>'. Type '<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'. 24 lift<R>(operator: Operator<T, R>): Observable<T>;
今度は、RxJs のバージョンが古い模様。pakage.json
のRxJs 5.x の最新バージョンに変更します。
"rxjs": "5.0.1", ↓ "rxjs": "5.5.12",
npm install
を実行後にnpm start
を実行すると、今度はエラーが発生せず、問題解消しました。