Preview:
handleFinancialWorkshopAnswerEntryChange = (e, item, key) => {
    const { selectedfinancialworkshop } = this.state;
    const itemFind = selectedfinancialworkshop?.answeredEntries?.find(
      item2 => item['id'] == item2['id'],
    );

    if (itemFind) {
      if (key) {
        itemFind[key] = e;

        this.setState({
          selectedfinancialworkshop: {
            ...selectedfinancialworkshop,
            answeredEntries: [...selectedfinancialworkshop.answeredEntries],
          },
        });

        return;
      }

      if (e.target.name == 'Consolidated Level') {
        if (e.target.value == 'Yes') {
          itemFind['Entity-Specific'] = null;
          itemFind['Country-Specific'] = null;
          itemFind['Sector-Specific'] = null;
        }
      }

      itemFind[e.target.name] = e.target.value;

      this.setState({
        selectedfinancialworkshop: {
          ...selectedfinancialworkshop,
          answeredEntries: [...selectedfinancialworkshop.answeredEntries],
        },
      });
    } else {
      const itemFind = {
        ...item,
      };
      let newAnsweredEntries = [];

      if (selectedfinancialworkshop.answeredEntries) {
        newAnsweredEntries = [...selectedfinancialworkshop.answeredEntries];
      }

      if (key) {
        itemFind[key] = e;

        newAnsweredEntries.push(itemFind);
        selectedfinancialworkshop.answeredEntries = newAnsweredEntries;

        this.setState({
          selectedfinancialworkshop: {
            ...selectedfinancialworkshop,
            answeredEntries: [...newAnsweredEntries],
          },
        });

        return;
      }

      if (e.target.name == 'Consolidated Level') {
        if (e.target.value == 'Yes') {
          itemFind['Entity-Specific'] = null;
          itemFind['Country-Specific'] = null;
          itemFind['Sector-Specific'] = null;
        }
      }

      itemFind[e.target.name] = e.target.value;

      newAnsweredEntries.push(itemFind);
      selectedfinancialworkshop.answeredEntries = newAnsweredEntries;

      this.setState({
        selectedfinancialworkshop: {
          ...selectedfinancialworkshop,
          answeredEntries: [...newAnsweredEntries],
        },
      });
    }
  };
downloadDownload PNG downloadDownload JPEG downloadDownload SVG

Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!

Click to optimize width for Twitter