开发者社区> 问答> 正文

#React Element和Component有什么区别?

#React Element和Component有什么区别?

展开
收起
因为相信,所以看见。 2020-05-07 15:26:14 1792 0
1 条回答
写回答
取消 提交回答
  • 阿里,我所有的向往

    一个元素是描述你要在DOM节点或其他部件方面出现在屏幕上什么平原对象。元素可以在其道具中包含其他元素。创建一个React元素很便宜。创建元素后,就永远不会对其进行突变。

    React Element的对象表示如下:


    const element = React.createElement( 'div', {id: 'login-btn'}, 'Login' )


    上面的React.createElement()函数返回一个对象: { type: 'div', props: { children: 'Login', id: 'login-btn' } }

    最后,它使用ReactDOM.render()以下代码呈现给DOM :

    < div id = ' login-btn ' >登录</ div >

    而一个组件可以以多种不同的方式来声明。它可以是带有render()方法的类。或者,在简单情况下,可以将其定义为函数。无论哪种情况,它都将props作为输入,并返回JSX树作为输出: const Button =({onLogin})=> < div id = { ' login-btn ' } onClick = {onLogin} >登录< / div >

    然后,JSX被编译为React.createElement()功能树: const Button = ({ onLogin }) => React.createElement( 'div', { id: 'login-btn', onClick: onLogin }, 'Login' )

    2020-05-07 15:31:58
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
利用编译将 Vue 组件转成 React 组件 立即下载
React Native 全量化实践 立即下载
React在大型后台管理项目中的工程实践 立即下载