Redux 在纯函数中使用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":

可以在纯函数中使用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":  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: