首页 > 其他分享 >React类组件写法与函数式组件写法

React类组件写法与函数式组件写法

时间:2022-12-03 01:22:24浏览次数:32  
标签:render React openStatus createElement 组件 import 写法

React组件写法

class MyButton extends React.Component{
constructor(props){
//继承父类的构造函数
super(props);
this.state={
openStatus:false}
}
}
render(){
return '视图';}
}
//state={
// openStatus:false
//}
a(){

}

//React=>React API =处理视图的API集合
//React DOM从render=>虚拟DOM=>真实 DOM=》
var span = React.createElement('span',{
class:'text'
},'This is a span')
//ReactDOM.render():String
Rect.createElement('div',{
'data-tag':'div'
},
'This is a <span></span>'
},
document.getElementById('APP')
//Document.createElement
),

1 继承React,Component
2 .render函数返回一个视图

React组件

class MyButton extens React.Component{
constructor(props){
//继承父类的构造函数
super(props);
this.state={
openStatus:false}
}
render(){
const oP = React.createElement(
'p',
{
className:'text',
key:1
},
this.state.openStatus?'打开状态':'跑步状态'
);
const oBtn = React.creatElement(
'button',
{
key:2,
onClick:()=>this.setStatus({
openStatus:!this.state.openStatus
})
},
this.status.openStatus?'关闭':'打开'
);
const wrapper = React.createElement(
'div',
{
className:'wrapper'
},
[op,oBTN]
)
return wrapper;
}
}
ReactDOM.render(
React.createElement(myButton),
document.getElementById('app')
)


React函数式组件写法

index.js入口文件

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css'
import App from './App'
import {Provider} from "mbox-react";
import store from './store'
const root = ReactDOM.createRoot (document.getElementById('#root'));
root.render(
<Provider {...store}>
<App/>
</Provider>
)
function App(){
const [result,setResult]  = useState(0);
return (
<div className="App">
This is a React App
</div>
)
}

React类组件

import React,{Component} from 'react';
class App extends Component{
render(){
return(
<div className="App">
 <h1>
This is my first React experience
</h1>
</div>
)
}
}

标签:render,React,openStatus,createElement,组件,import,写法
From: https://www.cnblogs.com/czh0316/p/16946090.html

相关文章

  • Latex常见数学符号写法
    写在前面本文主要记录一些Latex数学公式符号的写法,便于自己查阅。公式写法来源:刘海洋的《Latex入门》。1概述Latex有两种数学公式,一种是行内公式,也就是和文本同行的数......
  • 组件化与模块化
    单文件组件创建项目在cmd输入npminitvite-appvue3_demovue3_demo是文件夹名(项目名)在vscode中打开,开发项目写代码都在src目录下面写再进入项目中下载依赖npmi......
  • SignalR循序渐进(三)简易的集群通讯组件
    上一篇演示了泛型Hub的实现,微软于6月17日更新了SignalR2.1.0,然后自带了泛型Hub,于是就不需要自己去实现了…(微软你为啥不早一个月自带啊…)。不过没关系,SignalR出彩之处不在......
  • 小程序分包放置echarts组件
    app.json"subPackages":[{"root":"commonPackage","pages":[]}],pages同级目录加commonPackage分包中放入echarts组件信息使用xx.js......
  • ReactHook父组件调用子组件的方法,且子组件用了connect
    ReactHook父组件调用子组件的方法,且子组件用了connect子组件1、引入useImperativeHandle,forwardRef2、子组件由function改成let,接收prop和ref,并从props中结构出refI......
  • react18中useCallback与memo使用
     1、父组件Demo3Count组件缓存有两种方法a、  b、    2、子组件    3、效果3.1、初始均渲染  3.2、点击b......
  • vue3新增知识点(组合式API、ref和reactive、响应式原理、setup、watch和watchEffect)持
    1.组合式API和声明式API的区别,组合式API的优点2.Vue3的响应式原理通过Proxy(代理):拦截对象中任意属性的变化:包括:属性值的读写、属性的添加、属性的删除等。通过reflect(反射):......
  • react native中刷新页面
    在reactnative中刷新页面就是改变页面的数据源,如果页面的数据源是state或者是store那么当数据源改变了.页面就会自动刷新的.所以刷新页面的两种方式1:用redux来做数据源......
  • VUE组件之间的参数传递与方法调用
    父组件向子组件父组件向子组件传参:父组件中的子组件标签中增加:param="param"子组件中增加props接受参数(注意props需要与data同级)props:{param:{typ......
  • Flutter不常用组件(二)
    ColoredBox一般我们想要一个带有背景颜色的组件我们会使用哪个组件?当然第一个想到的就是Container。其实在Flutter中还要一个专门用来设置颜色的组件ColoredBox。该组......