【发布时间】:2016-12-22 06:16:52
【问题描述】:
按照 React 教程,我在 reducer 中看到了这段代码,用于使用其 ID 从数组中删除消息:
else if (action.type === 'DELETE_MESSAGE') {
return {
messages: [
...state.messages.filter(m => m.id === action.id)
],
};
};
我想了一会儿filter 可能会修改状态并返回相同的数组,但根据MDN 它会创建一个新数组。
我安全吗?我的实现是否正确?
【问题讨论】:
-
看起来扩展运算符连接了两个数组。见repl.it/EvXg/1@Rajesh
-
不知道有没有性能方面的原因。使用大数组,切片方法会更快吗?
-
@Scimonster 这就是我的想法。我不明白他们的做法,似乎效率低下。
标签: javascript reactjs redux react-redux