创建参考的动态列表

问题描述 投票:0回答:1

我有一个动态创建的React元素列表,它是通过在render函数中运行一个方法创建的:

surveyFileErrors.map((errorData, i) => {
 return arr.push(<FileErrorCard ref={} key={errorData.id} errorData={errorData} />);
}

我正在尝试为每个元素创建一个Ref,以便我可以使用向上和向下箭头将焦点更改为元素。这是我的构造函数:

constructor(props) {
    super(props);
    this.state = {
      fileErrorList: [],
      activeList: null,
      activePage: 1,
    };
    this.errorRefs = [];
}

我正在尝试在React 16.3中使用新的React.createRefs(),但它给出的示例显示我需要在构造函数中使用React.createRefs,它将在我开始创建上面的列表之前执行。此列表仅在操作检索错误列表后创建。我可以提供更多信息,但我不想写太长的帖子。

javascript reactjs
1个回答
0
投票

这就是我使它工作的方式,希望它有所帮助:

const refObj = {};
surveyFileErrors.map((errorData, i) => {
     refObj[i] = React.createRef();
     return arr.push(<FileErrorCard ref={refObj[i]} key={errorData.id}
                     errorData={errorData} />);
    }
© www.soinside.com 2019 - 2024. All rights reserved.