【发布时间】:2019-07-20 16:25:29
【问题描述】:
我有一个 reducer,它有 switch 语句,但是 switch 语句中的变量赋值通过了一个错误?
var answers, payload;
switch (action.type) {
case ANSWER_FETCH_FAILED:
return Object.assign({}, initialState, action.payload);
case REMOVE_ANSWERS:
// condition for removing the user answers from answers
/*line 42 */
answers = Object.assign([], initialState.answers),
payload = Object.assign({}, action.payload);
// removing the deleted answer
answers = answers.filter(ans => ans.authorId !== payload.authorId);
// deleting the user id from payload
delete payload.authorId;
return Object.assign({}, initialState, { answers }, payload);
case ANSWERED:
/*line 50 */
answers = Object.assign([], initialState.answers),
payload = Object.assign({}, action.payload);
return Object.assign({}, initialState, action.payload);
default:
return initialState;
}
这是反应中显示的错误
./src/reducers/postReducer.js
第 42 行:预期分配或 函数调用,而是看到一个表达式 no-unused-expressions
第 50 行:应为赋值或函数调用,但看到的是 表达式 no-unused-expressions
【问题讨论】:
-
添加 {} 后也显示相同的错误
-
只有当第一个赋值行有
var、let或const时(当你正在初始化new 时,才使用,变量),否则使用;
标签: javascript reactjs react-redux switch-statement