Redux 在纯函数中使用lodash映射输入值是否正确?
可以在纯函数中使用lodash来Redux 在纯函数中使用lodash映射输入值是否正确?,redux,ionic2,ngrx,ngrx-effects,Redux,Ionic2,Ngrx,Ngrx Effects,可以在纯函数中使用lodash来\uu.map输入值,还是只能使用较慢的本机数组.map 例如: let shortcuts = _.map(state.shortcuts, (shortcut: any) => { switch(shortcut.page){ case "Transfers": return tassign(shortcut, { badge: action.payload.transfers }); case "Payments":
\uu.map
输入值,还是只能使用较慢的本机数组.map
例如:
let shortcuts = _.map(state.shortcuts, (shortcut: any) => {
switch(shortcut.page){
case "Transfers": return tassign(shortcut, { badge: action.payload.transfers });
case "Payments": return tassign(shortcut, { badge: action.payload.payments });
case "Inbox": return tassign(shortcut, { badge: action.payload.inbox });
case "ConsolidatedPosition": return tassign(shortcut, { badge: action.payload.consolidatedPosition });
default: return shortcut;
}
});
return tassign(state, { shortcuts: shortcuts });
Lodash's没有状态,也没有副作用,所以很好
纯函数是返回值仅为
由其输入值决定,无明显副作用
Lodash的map在类似于Array.prototype.map()的环境中工作,该环境创建了一个新数组,其结果是对该数组中的每个元素调用提供的函数
一般来说,为了保持函数的纯粹性,总是返回一个新值,并且不执行该函数范围之外的任何其他操作,例如与DOM相关的操作等等
纯函数和redux: