在这个es6解构中作为道具传递的所有属性是什么?

时间:2018-03-01 07:26:40

标签: javascript reactjs

在这个es6 destructure中作为道具传递的所有属性是什么?

const {
      day,
      day: {
        date,
        isCurrentMonth,
        isToday,
        number
      },
      select,
      selected
    } = this.props;

1 个答案:

答案 0 :(得分:2)

你的道具对象是这样的

this.props = {
  day: {
    date,
    isCurrentMonth,
    isToday,
    number
  },
  select,
  selected
} 

props day属于type个对象,选择哪个可以是数字,字符串,布尔值或其他可以真正来自您提供的信息的类型,和selected作为我们的最后一个道具。

要解构,this.props,你做这样的事情:

 const { day, select, selected } = this.props;

由于day也是object,您可以进一步对其进行解构:

const { date, isCurrentMonth, isToday, number } = day

您也可以在day对象本身上调用日期对象属性

const date = day.date;
const  isCurrentMonth = day.isCurrentMonth;

上面的那段代码类似于前面提到的解构。

简单地说,通过解构,您将对象属性存储在其他变量中以便于访问