html - 在 React 中渲染 HTMLDivElement

标签 html dom reactjs render

我在尝试使用 React 呈现 HTMLDivElement 时遇到了这个问题,但是我收到以下错误:

Uncaught Invariant Violation: Objects are not valid as a React child (found: [object HTMLDivElement]). If you meant to render a collection of children, use an array instead or wrap the object using createFragment(object) from the React add-ons. Check the render method of `VirtualList`

在我的 React Component 类中,我有这段代码......

import React, { Component } from 'react';

export default class VirtualList extends Component {

    constructor(props) {
        super(props);

        this.container = document.createElement('div');
    }

    renderList() {
        let container = this.container;

        // Manipulate container etc.

        return container;
    }

    render() {

        return (
            <div>
                {this.renderList()}
            </div>
        )
    }
}

帮助将不胜感激!

最佳答案

DOCS:

ReactElements 不要与 DOM 元素混淆。

你可以通过 React.createElement 创建 React Element。

this.container = React.createElement('div');

关于html - 在 React 中渲染 HTMLDivElement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38765428/

相关文章:

javascript - PushNotificationIOS.presentLocalNotification() 在 native react 中不起作用

javascript - 如何仅在reactjs中向单击的元素添加类?

javascript - 如何删除 div 但防止滚动位置被更改?

html - CSS block 宽度不大于前一个 block

javascript - 鼠标悬停在 IE7 中不起作用?

javascript - 模拟点击动态添加的 DOM 中不存在的 div

jquery - 使用Jquery解析网页的html,修改,然后重新插入网页

javascript - 如何使用 javascript 去除除 <a></an>、<img>(内部属性)和 <br> 之外的所有常规 html 标签?

html - 浏览器会解析/预渲染/绘制显示:none HTML?

javascript - 如何在 Material UI 中设置 Material 卡的最小高度?