javascript - react 与 react DOM 混淆

标签 javascript reactjs

我正在使用带有 React 的 ES6 babel,现在对于更新版本的 React,React DOM 不再是其中的一部分。我对以下代码的怀疑是,它是第一行要求吗?因为我无处需要 React,但最后一行我需要 ReactDOM。

const React = require('react')
const ReactDOM = require('react-dom')

const App = () => {
    return (
        <div className='app-container'>
            <div className='home-info'>
                <h1 className='title'>sVideo</h1>
                <input className='search' type='text' placeholder='Search' />
                <button className='browse-all'> or Browse All</button>
            </div>
        </div>
    )
}

ReactDOM.render(<App />, document.getElementById('app'))

最佳答案

0.14 版本开始,React 分为两部分:ReactReactDOM。 您正在使用 ReactDOM 进行渲染你的 HTML 元素。因此,在您的组件中 import ReactDOM 绝对有意义。但就 React 而言,虽然你没有直接使用 React,但它被间接使用,因为你在 return 语句中编写的任何内容都将被转换为 React.createElement 函数,该函数将创建实际的DOM 元素。

现在如果你在代码中省略 React 就可以看到这一点,你会看到一个错误

react is not present

它会给你React is not recognized in React.createElement.希望你能理解它。

关于javascript - react 与 react DOM 混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39760815/

相关文章:

javascript - Onpaste 仅由键盘粘贴触发

javascript - Date.toLocaleDateString() 不适用于 Nodejs v10.14.2

javascript - 比较 JSON 返回的参数值

javascript - 按下按钮时将数据发送到服务器

javascript - Firebase 未捕获错误(离线推送 json 时)

reactjs - 使用React Typescript的状态: Property does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes

javascript - 为什么 JavaScript 传播符号在这里不起作用

javascript - 确定从字符串到 32 位整数的转换是否会溢出

android - 如何在 Flatlist 中使用单选按钮 - React native

reactjs - 使用 D3 在 ReactJS 中没有获得具有预期链接样式的树