javascript - ReactJS - ReactMount : Root element has been removed from its original container. 新容器

标签 javascript reactjs

这个错误是什么意思?如何解决?

ReactMount: Root element has been removed from its original container. New container

在这之后我得到了这个:

Uncaught object react.js:15915
invariant react.js:15915
ReactMount.findComponentRoot react.js:10584
ReactMount.findReactNodeByID react.js:10480
getNode react.js:10089
(anonymous function) react.js:7307
(anonymous function) react.js:11403
processQueue react.js:10856
ReactMultiChild.Mixin.updateChildren react.js:10970
ReactDOMComponent.Mixin._updateDOMChildren react.js:7007
(anonymous function) react.js:6860
(anonymous function) react.js:11403
ReactComponent.Mixin._performUpdateIfNecessary react.js:4409
ReactComponent.Mixin.receiveComponent react.js:4380
ReactDOMComponent.Mixin.receiveComponent react.js:6833
(anonymous function) react.js:5963
(anonymous function) react.js:11403
ReactCompositeComponentMixin._performComponentUpdate react.js:5899
ReactCompositeComponentMixin._performUpdateIfNecessary react.js:5842
Mixin.perform react.js:14266
ReactComponent.Mixin.performUpdateIfNecessary react.js:4390
ReactCompositeComponentMixin.performUpdateIfNecessary react.js:5792
enqueueUpdate react.js:12731
ReactCompositeComponentMixin.replaceState react.js:5676
ReactCompositeComponentMixin.setState react.js:5655
(anonymous function) posts.js:273
j jquery-1.11.1.min.js:2
k.fireWith jquery-1.11.1.min.js:2
x jquery-1.11.1.min.js:4
b

当我遇到这些问题时,我会尝试使用新的项目列表来更新我的 View 。要更新我当前的 View ,我调用 updatePosts():

var updatePosts = function () {
    var content = document.querySelector('.content');
    content.innerHTML = '';
    $refresh.addClass('fa-spin');
    return React.renderComponent(
        <Posts />,
        content
    );
};

会不会是这个 innerHTML = '' 的问题?我将再次完整呈现我的 Posts 组件。

最佳答案

删除这一行

content.innerHTML = '';

React 将查看旧的虚拟 dom,以及 <Posts /> 返回的内容(与 Posts() 相同)。它将比较它们,并对 DOM 进行所需的更新。

关于javascript - ReactJS - ReactMount : Root element has been removed from its original container. 新容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24780891/

相关文章:

javascript - 使用 JavaScript 动态插入文本框的内容作为段落文本

javascript - 图像 slider 在 Angular js 中使用路由不起作用

javascript - Ruby on Rails 应用程序中的 React .js.jsx 扩展

javascript - 处理单独注册和登录服务的错误

javascript - node.js 编码错误

javascript - Meteor:将 RegExp 对象保存到 session

javascript - Reactabular:如何改变一列的宽度? CSS 文件在哪里?

javascript - 如何在react.js中单击按钮时读取按钮中的值字段

javascript - 通过具有子对象的对象进行映射 - Javascript

reactjs - 在 vs code 终端中安装镭包时如何解决此错误?谢谢