2017-07-13 14 views
1

Angularアプリにngrx/storeを追加しようとしています。チュートリアルの多く/紹介は次のようになります減速機能とシンプルなカウンターの上に行く:'Uncaught SyntaxError:オプションパラメータの予期しないトークン='

export const counter = (state = 0, action) => { 
    switch (action.type) { 
     case "INCREMENT": 
      return state + 1; 
     case "DECREMENT": 
      return state - 1; 
     case "RESET": 
      return state = 0; 
    } 
} 

私は私のアプリを実行するたびに、私は次のエラーを取得する:なぜこの

Uncaught SyntaxError: Unexpected token =

誰もが知っています起こっている?オプションのパラメータである2番目の '='記号について不平を言います。私の現在のpackage.jsonはタイプスクリプトのバージョンが「^ 2.2.1」です

+0

それはケースをリセット私はあなたに問題を見ているTSCバージョン 'バージョン2.5.0-dev.20170629' – lilezek

+2

、私の作品は、まず設定状態= 0にしようとし、それを返します。 – felipekm

+3

オプションのパラメータは必須パラメータの前に来るべきではありません。 – Kadima

答えて

0

Jsfiddleでテストしました。リンク:https://jsfiddle.net/tardycorgi9917/egt9sw2d/

状態を0に設定して戻る必要があります。また、一致するものがなく、オプションのパラメータが最後になければならない場合に備えて、デフォルトのスイッチが常に存在しなければなりません(typescriptドキュメント内)。

export const counter = (action, state = 0) => { 
    switch (action) { 
    case "INCREMENT": 
     return ++state; 
    case "DECREMENT": 
     return --state; 
    case "RESET": 
     return (state = 0); 
    } 
} 
+0

あなたはフィドルのリンクを持っていますか? – Roka545

+1

https://jsfiddle.net/tardycorgi9917/egt9sw2d/ – ThomasK

+0

これはうまくいくようですが、なぜ関数のエラーが原因で関数のパラメータに構文エラーが発生するのですか? – Aron

関連する問題