Реакция инкрементного массива JavaScript

Привет это мое значение JSON

constructor() {
  super();
  this.exportpdf = this.exportpdf.bind(this);
  this.state = {
    sales: [
      {
        customStudentId: "2064517",
        studentRoll: 26,
        studentName: "Md. Faiaz Jakir ",
        stdCtExamMarks: [
          {
            viewSerial: 1,
            subjectName: "Bangla ",
            subjectFullMark: 25,
            obtainedMark: 0,
            highestMarks: 25
          }
        ]
      },
      {
        customStudentId: "2065817",
        studentRoll: 27,
        studentName: "Miraj  Bin Atik ",
        stdCtExamMarks: [
          {
            viewSerial: 1,
            subjectName: "English ",
            subjectFullMark: 25,
            obtainedMark: 0,
            highestMarks: 25
          }
        ]
      }
    ]
  };
}

И здесь я использую Primereact Datatable. И это код, который я использую, чтобы показать мои данные в таблице>

 <DataTable value={this.state.sales[0].stdCtExamMarks}>
        <Column field="subjectName" header="Subject" />
        <Column field="subjectFullMark" header="Full Mark" />
        <Column field="obtainedMark" header="Obtainedn Mark" />
        <Column field="highestMarks" header="Highest Mark" />
    </DataTable>

И ценность, которую я получаю за this.state.sales[0].stdCtExamMarks изображение здесь

Но мне нужны оба (и так далее) значения stdCtExamMarks из данных JSON. Как мне это сделать?

1 ответ

Решение

Но мне нужны оба (и так далее) значения stdCtExamMarks из данных JSON. Как мне это сделать?

Так что вам нужно извлечь stdCtExamMarks от каждого объекта в массиве? Вы можете использовать map сделать это. Он вернет массив сопоставленных объектов:

<DataTable value={this.state.sales.map(sale => sale.stdCtExamMarks)}>
Другие вопросы по тегам