代码之家  ›  专栏  ›  技术社区  ›  user3174311

如何从道具中取消对同名值的引用

  •  0
  • user3174311  · 技术社区  · 4 年前

    我经常从这样的道具中获得价值

    onSubmit = () => {
        const {
            id,
            client: {
                name,
                surname,
                address
            },
        } = this.props.release
    
        this.props.onSubmit(id, name, surname, address)
    }
    

    现在我需要更新onSubmit调用,传递一个额外的参数,在我的props对象中是在recipient中,名称是address。我不能这么做:

    const {
        id,
        client: {
            name,
            surname,
            address
        },
        recipient: {
            address
        },
    } = this.props.release
    
    this.props.onSubmit(id, name, surname, address, < recipientAddress >)
    

    因为这与客户端内的地址冲突。 请问我该怎么解决?

    0 回复  |  直到 4 年前
        1
  •  3
  •   Dennis Vash    4 年前
    const {
      id,
      client: {
        name,
        surname,
        address
      },
      recipient: {
        address: recipientAddress
      },
    } = this.props.release
    
    this.props.onSubmit(id, name, surname, address, recipientAddress)
    

    然后你可以访问 address 财产 recipient 通过访问对象 recipientAddress

        2
  •  0
  •   Doruk Eren Aktaş Gourav    4 年前

    你确实需要使用 destructuring assignment

    onSubmit = () => {
        this.props.onSubmit(
            this.props.release.id,
            this.props.release.client.name, 
            this.props.release.client.surname,
            this.props.release.client.address, 
            this.props.release.recipient.address
        )
    }