ITの隊長のブログ

ITの隊長のブログです。Rubyを使って仕事しています。最近も色々やっているお(^ω^ = ^ω^)

【Angular】コンパイルエラー 「@types/jasmine/index.d.ts」

スポンサードリンク

ERROR in [default] /Users/user/node_modules/@types/jasmine/index.d.ts:39:37 
A parameter initializer is only allowed in a function or constructor implementation.

ERROR in [default] /Users/user/node_modules/@types/jasmine/index.d.ts:39:45 
Cannot find name 'keyof'.

ERROR in [default] /Users/user/node_modules/@types/jasmine/index.d.ts:39:51 
'=' expected.

いつもの通りにAngular cliを使って、ng init && ng serveとかでコンパイルしたら上のエラーが発生した。

なんぞこれ? なんか実装ミスった?

わかりやすそうなメッセージは「A parameter initializer is only allowed in a function or constructor implementation.」だと思ったから、これでググッたところ、typescriptのエラーだって。よくわからん。

で、泣きそうになっていたら、下記issueを発見。

github.com

おうおうおう。

A workaround that I’ve found is to change to version 2.5.41. I guess that the problem is in the last update of the jasmine typings

ありがたい。さっそくpackage.jsonjasmineのバージョン箇所を書き換える。

^2.2.30となっているはず。これを2.5.41へ変更する。

  "devDependencies": {
    "@types/jasmine": "2.5.41",

これで、npm installをタイプしてアップデートすればおk.

ふぅ。1時間orz.