反应与反应DOM混淆

Mar*_*ane 9 javascript reactjs

我正在使用ES6 babel做出反应,现在对于新版本的反应,反应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'))
Run Code Online (Sandbox Code Playgroud)

Shu*_*tri 12

从版本0.14开始的反应分为两部分:ReactReactDOM.你正在利用ReactDOM to render you HTML element.因此,import ReactDOM在您的Component中对您来说绝对有意义.但就React而言,尽管你并没有直接使用React,但它是间接使用的,因为你在return statement will be transpiled into React.createElement函数中编写的任何内容都将创建实际的DOM元素.

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

反应不存在

它会给你React is not recognised in React.createElement.希望你理解它.