将重建的对象键重命名为其他名称

时间:2019-03-05 07:37:00

标签: javascript reactjs ecmascript-6

this.state = {
  date: {
    value: {
      from: '1/1/2019',
      to: '4/1/2019'
    }
  }
}

render() {
  const { date } = this.state

  return <Date date={date.value} />
}

我必须将状态对象传递给组件,我不喜欢date.value,因为它从字面上意味着日期,但是如何将date.value重命名为date

我可以像这样解构该值

render() {
  const { date: value } = this.state

  return <Date date={value} />
}

但是如果我还有其他组件,那就不好了。

1 个答案:

答案 0 :(得分:2)

您可以破坏value并将其重命名为date

render() {
    const { date: { value: date } } = this.state

    return <Date date={date} />
}

var state = { date: { value: { from: '1/1/2019', to: '4/1/2019' } } },
    { date: { value: date } } = state;

console.log(date);