Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React递归组件-子级未正确重新排序_Javascript_Ruby On Rails_Recursion_Reactjs - Fatal编程技术网

Javascript React递归组件-子级未正确重新排序

Javascript React递归组件-子级未正确重新排序,javascript,ruby-on-rails,recursion,reactjs,Javascript,Ruby On Rails,Recursion,Reactjs,我在react中编写了一系列组件,它们将构成如下结构: Field |_BasicField: plain input field. |_ListField: a list of Fields. |_Entity: a complex Field that can have BasicFields, ListFields and Entities as its children components. 你可以找到这个结构的代码 用于生成报废单的数据为 一旦呈

我在react中编写了一系列组件,它们将构成如下结构:

Field
  |_BasicField: plain input field.
  |_ListField: a list of Fields.
  |_Entity: a complex Field that can have BasicFields, ListFields
            and Entities as its children components.
你可以找到这个结构的代码

用于生成报废单的数据为


一旦呈现了表单的第一级,就会动态生成子
字段
s,但它们似乎没有按预期重新呈现。我只是想解释一下,在我看来,react将子组件缓存在以前的状态中,但是当状态更新时,它不会更新子组件,而是按照它们在以前状态中的位置或类似的方式呈现它们,我在这里真的迷失了方向。我甚至不知道到哪里去找错误。任何帮助都将不胜感激!谢谢。

你能详细谈谈这个问题吗?我很难理解你的问题。可能是一些屏幕截图或代码亮点?谢谢您的关注。我解决了这个问题,这是一个关于如何导入文件和库的奇怪问题(必需)。我通过将问题中涉及的所有组件移动到单个文件(
BasicField
ListField
实体
字段
),并执行清除缓存和删除
节点模块
目录并再次运行
npm安装
,解决了这个问题,确保在运行
npm ls react
时,它只列出一个
react
包,以避免出现错误。我真的无法列举我到底做了什么,但这个问题对我来说太神秘了:P显示了问题解决的地方。如果您处于类似的情况,您可以从它向后走,并尝试跟踪更改。对不起,我不能说得更具体了。