【问题标题】:React how can i add 'ref' to dom out of render?反应我如何在渲染中添加'ref'到dom?
【发布时间】:2017-07-29 01:54:30
【问题描述】:

exmcode在这里

mines[i] = (
  <p key = {i} ref = {i}></p>
  );
  .....
  render(
      return(
          {mines}
      )
  )

当我在我的页面上呈现它时,

(其实我加了一个点击 功能第一,当我点击按钮时,“地雷”发生了变化)

浏览器调用错误

addComponentAsRefTo(...):只有 ReactOwner 可以有 refs。您可能正在向未在组件的 render 方法中创建的组件添加 ref,或者您加载了多个 React 副本。

我该怎么办

【问题讨论】:

标签: javascript reactjs dom


【解决方案1】:

你不能把它放在渲染中,但在返回之前?类似的东西:

  render(
      mines[i] = (
        <p key = {i} ref = {i}></p>
      );
      return(
        <div className="wrapper">
          {mines}
        </div>
      )
  )

【讨论】:

  • 也许这是解决方案之一,但如果可以的话,我想把它放在外面。顺便说一句,谢谢
  • 尝试使用唯一的字符串来创建您的 ref 名称:ref = { 'test-' + i }
猜你喜欢
  • 2016-09-12
  • 2018-07-10
  • 2018-03-10
  • 1970-01-01
  • 1970-01-01
  • 2021-08-24
  • 1970-01-01
  • 2020-06-21
  • 2017-12-02
相关资源
最近更新 更多