React组件创建方式有哪一些,怎么实现的
Admin 2022-06-18 群英技术资讯 562 次浏览
函数组件:使用JS的函数(或箭头函数)创建的组件
约定1:函数名称必须以大写字母开头
约定2:函数组件必须有返回值,表示该组件的结构
如果返回值为null,表示不渲染任何内容
function Hello() { return ( <div>这是我的第一个函数组件!</div> ) } const Hello = () => <div>这是我的第一个函数组件!</div>
渲染函数组件:用函数名作为组件标签名
组件标签可以是单标签也可以是双标签
//1. 导入react import React from 'react'; import ReactDOM from 'react-dom'; /* 函数组件: */ function Hello() { return ( <div>这是我的第一个函数组件!</div> ) } //渲染组件 ReactDOM.render(<Hello />, document.getElementById('root'))
组件类:使用ES6的class创建的组件
约定1:类名称也必须以大写字母开头
约定2:类组件应该继承React.Component父类,从而可以使用父类中提供的方法或属性
约定3:类组件必须提供render()方法
约定4:render()方法必须有返回值,表示该组件的结构
//1. 导入react import React from 'react'; import ReactDOM from 'react-dom'; /* 函数组件: */ function Hello() { return ( <div>这是我的第一个函数组件!</div> ) } //渲染组件 ReactDOM.render(<Hello />, document.getElementById('root'))
1. 创建Hello.js
2. 在Hello.js中导入React
3. 创建组件(函数或类)
4. 在Hello.js中导出该组件
5. 在index.js中导入Hello组件
6. 渲染组件
Hello.js
import React from "react"; //创建组件 class Hello extends React.Component { render () { return ( <div>这是我的第一个抽离到js文件中的组件!</div> ) } } //导出组件 export default Hello
index.js
//1. 导入react import React from 'react'; import ReactDOM from 'react-dom'; /* 抽离组件到独立的JS文件中: */ //导入Hello组件 import Hello from './Hello'; //渲染组件 ReactDOM.render(<Hello />, document.getElementById('root'))
到此这篇关于React组件的两种创建方式的文章就介绍到这了,更多相关React组件创建方式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要为大家详细介绍了js+Html实现表格可编辑操作,能动态添加删除行,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
微信小程序常用表单组件的使用,下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家,下面我们一起来了解看看吧。
这篇文章主要介绍了webpack中的optimization配置详解,主要就是根据不同的策略来分割打包出来的bundle,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
这篇文章主要为大家详细介绍了JavaScript仿淘宝放大镜效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文主要介绍了react hooks组件间的传值方式(使用ts),文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008