Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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 反应+;主干,目标容器不是DOM元素_Javascript_Backbone.js_Reactjs - Fatal编程技术网

Javascript 反应+;主干,目标容器不是DOM元素

Javascript 反应+;主干,目标容器不是DOM元素,javascript,backbone.js,reactjs,Javascript,Backbone.js,Reactjs,注意:这是一个抛出的react错误 因此,我正在尝试一个实验,在这个实验中,我根据该页面呈现来自主干路由器的post组件。现在我知道你通常不会这样做,事情会变得一团糟。但这只是一个实验 因此,我在主干网中有以下路由(注意react调用): 其想法是,它应该在页面上一个接一个地吐出一个帖子标题(我感觉它只会这样做一次) 但问题是控制台说: Uncaught错误:不变冲突:\u registerComponent(…):目标容器不是DOM元素。 这是因为我试图渲染组件的方式吗 将组件渲染为真实的DO

注意:这是一个抛出的react错误

因此,我正在尝试一个实验,在这个实验中,我根据该页面呈现来自主干路由器的post组件。现在我知道你通常不会这样做,事情会变得一团糟。但这只是一个实验

因此,我在主干网中有以下路由(注意react调用):

其想法是,它应该在页面上一个接一个地吐出一个帖子标题(我感觉它只会这样做一次)

但问题是控制台说:

Uncaught错误:不变冲突:\u registerComponent(…):目标容器不是DOM元素。

这是因为我试图渲染组件的方式吗

将组件渲染为真实的DOM元素。正在引发异常,因为您没有将DOM元素作为所需的第二个参数传递

将React组件呈现到提供的 容器并返回对组件的引用


如果您只想从React获得HTML,可以使用。

您正在将
this.mountNode
设置为
$(“#blog manage”)
,这是一个jQuery对象(本质上是一个节点数组)。如果你改为

mountNode: $('#blog-manage')[0]


然后您将引用实际的DOM节点。

因此,我在帖子中更新了代码,为其提供了一个节点-该节点确实存在,但我不确定是否正确,因为错误是相同的…
这在循环中不是您所期望的。您需要设置
$的上下文。每个调用:
$。每个(function(){…},this)。这就是主干源代码的作用。它看起来很简陋,但我想这就是它的工作原理。
ReactComponent renderComponent(
  ReactComponent component,
  DOMElement container,
  [function callback]
)
mountNode: $('#blog-manage')[0]
mountNode: $('#blog-manage').get(0)