0

这让我发疯了。我有一个用例,我在一个编辑器中插入一个节点,它应该在后续编辑器中插入该节点。我仅在单击组件时才渲染组件,因此如果我采用传统的引用方式,

ref={editor => {
      this.editorRef = editor;
}} 

父组件模型中的下一个编辑器引用将为空。顺便说一句,父组件模型的editorRef模型为

 editorRef = {
    editor0: null,
    editor1: null
  };

这是代码沙箱

以前,当它们一次性渲染时,我很容易更新它们,但在这里它们会根据他们单击的导航按钮进行渲染。

4

1 回答 1

1

我快速浏览了一下,发现您当前的解决方案过于复杂 - 我认为您的方法需要重新考虑。

您不需要使用 refs 来做您想做的事情,refs 仅在少数用例中需要,而这不是其中之一。插入文本应该只在一个共同的父级中更新您的状态,然后这个状态应该用于在您的两个(或多个)编辑器中呈现您需要的任何内容。

于 2019-10-21T09:50:09.147 回答