javascript - Lodash 转换不转换对象

标签 javascript lodash

我做错了什么,看不到。我的目标是更新返回的 ajax 调用集合中的数据值。我正在使用 _.transform我可以在控制台中看到数据更新,但对象并未转换为 lodash 方法的输出。我确定我想多了/错过了一些东西。任何见解都会很棒

.then(response => {
    if(response.data){
      var arr = response.data;
      arr.forEach(data =>
        _.transform(data, (item, val, key) => {
          if(/(date)/i.test(key)){
            val = moment(val, 'YYYY-MM-DD HH:mm Z').format("DD/MM/YYYY hh:mm a");
            item[key] = val;
            console.log('data test ', item[key]);
          }
        }, {}))
      self.setState({tableData: response.data._embedded.organizations})
    }
  })

最佳答案

抱歉,如果我错了,但我认为 lodash 的转换会返回新的对象/数组,它不会修改您迭代的对象。无论您在转换中更改多少数据变量,它都不会更改,除非您在转换完成后重新分配它。

关于javascript - Lodash 转换不转换对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46919133/

相关文章:

javascript - 从 firebase 数据库 Javascript 返回值

javascript - 同步调用

javascript - jQuery/JavaScript - 在 <span> 占位符中显示文本输入的值

javascript - 按年份和月份对数组进行排序

javascript - 在 lodash 中使用 .uniq 函数时如何指定 [isSorted = true]?

javascript - Q.all 没有以正确的顺序解析

javascript - react : Having some trouble passing multiple pieces of state.

javascript - Lodash 递归函数超出最大堆栈大小

javascript - 使用javascript比较和排序数组

javascript - 将 Hooks 与 Redux 一起使用——不好的做法?