'uncaught SyntaxError:可选参数

时间:2017-07-13 16:47:14

标签: angular typescript ngrx

我正在尝试将ngrx / store添加到我的Angular应用中。很多教程/介绍都是通过一个带有reducer函数的简单计数器来实现的:

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

每当我运行我的应用程序时,都会收到以下错误:

  

未捕获的SyntaxError:意外的令牌=

有谁知道为什么会这样?它抱怨第二个'='符号,可选参数。我当前的package.json有typescript版本'^ 2.2.1'

1 个答案:

答案 0 :(得分:0)

在Jsfiddle上测试过。链接:https://jsfiddle.net/tardycorgi9917/egt9sw2d/

只需将状态设置为0然后返回。此外,如果没有匹配且可选参数必须在最后,您应始终拥有默认开关(在打字稿文档中)。

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