Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “如何访问”;“家长”;“中的map()函数索引”;“儿童”;地图()_Javascript_Arrays_Reactjs - Fatal编程技术网

Javascript “如何访问”;“家长”;“中的map()函数索引”;“儿童”;地图()

Javascript “如何访问”;“家长”;“中的map()函数索引”;“儿童”;地图(),javascript,arrays,reactjs,Javascript,Arrays,Reactjs,我有一个日期数组。我需要做一个类似日历的日期表。每个单元格都是一个有两个按钮的无状态组件,每个按钮都有一个回调函数,用于修改与给定日期对应的数据 表是通过映射由天数数组组成的“父”数组(为了成为日历,每个“子数组”的长度大于等于6)生成的,然后映射每个子数组,从而创建行 但是,由于每个表行都是通过映射单独的数组生成的,所以通常我如何跟踪单元格的数量?我希望每个单元格都有唯一的索引,尽管它们是由单独的map()生成的 为什么我要这样做?因为单击每个单元格内的按钮需要修改与单元格表示的日期相对应的一

我有一个日期数组。我需要做一个类似日历的日期表。每个单元格都是一个有两个按钮的无状态组件,每个按钮都有一个回调函数,用于修改与给定日期对应的数据

表是通过映射由天数数组组成的“父”数组(为了成为日历,每个“子数组”的长度大于等于6)生成的,然后映射每个子数组,从而创建行

但是,由于每个表行都是通过映射单独的数组生成的,所以通常我如何跟踪单元格的数量?我希望每个单元格都有唯一的索引,尽管它们是由单独的map()生成的

为什么我要这样做?因为单击每个单元格内的按钮需要修改与单元格表示的日期相对应的一些数据

我尝试将日期数组(用于生成数组数组)映射到对象,以便通过回调方法轻松访问每个日期

我在“parent”和“child”map()方法上尝试了一些算术运算,但我猜index prop不是继承的

我甚至尝试创建一个以日期为自定义键的数组,每个元素都是由两个元素组成的数组(这就是我需要通过这些回调操作的数据)

日期数组的示例数组

let arrayOfWeeks = [
 [
  "01.05.2019",
  "02.05.2019",
  "03.05.2019",
  "04.05.2019",
  "05.05.2019",
  "06.05.2019",
  "07.05.2019",
 ],
 [
  "08.05.2019",
  "09.05.2019",
  "10.05.2019",
  "11.05.2019",
  "12.05.2019",
  "13.05.2019",
  "14.05.2019",
  ]
]
日历表

<tbody>
  {arrayOfWeeks.map((row, index) =>
    <tr key={index}>
      {row.map((date, index) =>
        <CalendarCell key={index} date={date} index={index} callback={() => this.onCallback(someProps)} />
      )}
    </tr>
  )}
</tbody>

由于索引有两个唯一的名称,因此可以进行一些数学运算

为索引使用不同的名称。例如:

<tbody>
    {arrayOfWeeks.map((row, index) =>
        <tr key={index}>
            {row.map((date, index2) =>
                <CalendarCell key={index} date={date} index={index}
                 callback={() => this.onCallback(someProps)} />
            )}
               </tr>
    )}
</tbody>
如果您对此不清楚或有疑问,请告诉我

<tbody>
  {arrayOfWeeks.map((row, index) =>
    <tr key={index}>
      {row.map((date, index2) =>
        <CallendarCell key={index} date={date} index={index * 7 + index2} onCallback={this.onCallback} />
     )}
   </tr>
  )}
</tbody>
<tbody>
    {arrayOfWeeks.map((row, index) =>
        <tr key={index}>
            {row.map((date, index2) =>
                <CalendarCell key={index} date={date} index={index}
                 callback={() => this.onCallback(someProps)} />
            )}
               </tr>
    )}
</tbody>
const A = (a)=>{
  const b = (b)=>{
    console.log('A:',a)
    console.log('B:',b)
  }
  b(2);
}
a('1');
//output will be:
// A:1
// B:2