Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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 警告:<;未知组件/>;由[Unknown]和[Unknown]共同呈现_Javascript_Google Chrome_Reactjs_Google Chrome Devtools_Reactjs Flux - Fatal编程技术网

Javascript 警告:<;未知组件/>;由[Unknown]和[Unknown]共同呈现

Javascript 警告:<;未知组件/>;由[Unknown]和[Unknown]共同呈现,javascript,google-chrome,reactjs,google-chrome-devtools,reactjs-flux,Javascript,Google Chrome,Reactjs,Google Chrome Devtools,Reactjs Flux,我在使用react时遇到此错误: Warning: <Unknown Component /> is being rendered by both [Unknown] and [Unknown] using the same key (null) in the same place. Currently, this means that they don't preserve state. This behavior should be very rare so we're cons

我在使用react时遇到此错误:

Warning: <Unknown Component /> is being rendered by both [Unknown] and [Unknown] using the same key (null) in the same place. Currently, this means that they don't preserve state. This behavior should be very rare so we're considering deprecating it. Please contact the React team and explain your use case so that we can take that into consideration.
Warning: setState(...): Can only update a mounted or mounting component. This usually means you called setState() on an unmounted component. This is a no-op.
警告:正在由[Unknown]和[Unknown]在同一位置使用相同的键(null)呈现。目前,这意味着它们不保留状态。这种行为应该非常罕见,所以我们正在考虑不推荐它。请联系React团队并解释您的用例,以便我们能够将其考虑在内。
警告:设置状态(…):只能更新已安装或正在安装的组件。这通常意味着您在未安装的组件上调用了setState()。这是禁止的。
以下是我们所做工作的一些背景:

我们正在构建一个应用程序,它可以动态地添加和删除容器中的视图。这些视图存储在ViewStore中。有用于添加和删除视图的ViewActions

在该存储中管理的所有视图都有一个静态ViewKey,该项仅用于此视图。要添加视图,可以调用
ViewActions.addView()
。如果视图已存在,则将替换它

ViewContainer通过侦听ViewStore中的更改来渲染这些视图,并使用设置为ViewKey的key属性渲染视图

当我添加一个已经存在的视图来响应鼠标单击事件时,一切都很好。当我从chrome的开发者控制台添加完全相同的视图时,该视图已经存在,我收到了上面提到的警告,但一切正常(可能是因为该视图以前已经渲染过)

我怎样才能摆脱这个警告

编辑:经过进一步调查,我发现只有在从Chrome开发者控制台启动操作时才会发生这种情况。在Firefox和IE(从开发者控制台)中,这项工作没有问题


为什么我只在Chrome中看到这个问题?

当您使用开发者控制台添加它时,它将是一个不同于react组件的类型。您应该看到,如果使用以下命令显示类型:

typeof <Component />
typeof
在控制台和代码中使用它。您应该看到了区别。

您可以向组件类添加静态属性,以改进警告和错误消息。