【问题标题】:Why is my object being split from char to char?为什么我的对象从 char 拆分为 char?
【发布时间】:2019-11-14 02:46:18
【问题描述】:

当我使用时

console.log(Object.values(params))

控制台登录节点显示如下:

[ '[', '"', 'i', 'd', '"', ',', '"', 'N', 'o', 'm', 'e', '"', ',', '"', 'T', 'i', 'p', 'o', 'P', ...

浏览器的控制台日志正常显示数据,但是当发送到后端时,它看起来像是被拆分了。

这是后端的代码:

_server.get(`/${Model.entity}/update`, (req, res) => {        
    Model.updateDefault(req.query.params)
})

  updateDefault(table, params) {        
    console.log(Object.values(params))    
  }

【问题讨论】:

  • params 是一个 string - 字符串的Object.values 是每个字符 - 也许你想要Object.values(JSON.parse(params))
  • 天哪!谢谢!我试图在 2 小时内解决这个问题
  • 也是一个节点,因为这是一个数组,Object.values也不需要。,只需JSON.parse(params)

标签: javascript node.js reactjs ecmascript-6


【解决方案1】:

感谢布拉沃。 我已经使用 Object.assign 来更改对象引用来解决这个问题。

如果我们只更改对象的一部分,redux 似乎不会注意到 store 的变化。所以这样做的方法是通过改变对象引用:

 case Actions.SEARCH_CEP:
        {
            let newData = {     
                    Endereco:   action.payload.logradouro ?  action.payload.logradouro : '',
                    Bairro:     action.payload.bairro ?  action.payload.bairro : '',
                    Uf:         action.payload.uf ?  action.payload.uf : '',
                    Cidade:     action.payload.localidade ?  action.payload.localidade : '' 
            }
            Object.assign(state.data, newData)

            return {
                ...state,
                data: { 
                    ...state.data                   
                }
            };
        }     

【讨论】:

    【解决方案2】:

    如果您将Object.values() 与字符串一起使用,它将为您提供所有这样的值

    let str = 'Hello'
    console.log(Object.values(str));
    console.log(Object.keys(str));

    这里的字符串也有索引和值,所以它会给你所有的值和 Object.keys(str) 会给你所有的索引值。

    何时使用Object.values()Object.keys()Object.entries()

    示例 -

    let obj = {
      name: 'John',
      age: 45,
      country: 'ABC'
    }
    console.log(Object.values(obj))
    console.log(Object.keys(obj))
    console.log(Object.entries(obj));

    【讨论】:

      猜你喜欢
      • 2012-02-25
      • 2017-10-27
      • 2023-04-02
      • 2020-09-29
      • 2023-04-10
      • 2018-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多