当前位置: 首页 > news >正文

React 重识

基本基础:css html JavaScript

JS 中的类

ES5之前使用function创建一个类

ES6之后引入class关键字

class Person{constructor(name,age){this.name = namethis.age = age}running(){}}const p = new Person(`why`,18)

ES6 中类的继承 继承是多态的前提

子类中必须通过super()初始化父类的对象

列表循环遍历渲染

// const About = () => {//     return <div>我是关于 </div>
// }
import React from "react"
class About extends React.Component{constructor(){super()this.state = {message:`电影列表`,movies:["fender","jazzmaster","jaguar"]}}render(){const list = []for(let movie of this.state.movies){list.push(<li>{movie}</li>)}return <div><h2>{this.state.message}</h2><ul>{list}</ul></div>}
}
export default About

方法二:使用map函数循环渲染

// const About = () => {//     return <div>我是关于 </div>
// }
import React from "react"
class About extends React.Component{constructor(){super()this.state = {message:`电影列表`,movies:["fender","jazzmaster","jaguar","brighton"]}}render(){// const list = []// for(let movie of this.state.movies){//     list.push(<li>{movie}</li>)// }return <div><h2>{this.state.message}</h2><ul>{this.state.movies.map((item,index)=><li key={index}>{item}</li>)}</ul></div>}
}
export default About

类组件实现计数器

// const About = () => {//     return <div>我是关于 </div>
// }
import React from "react"
class About2 extends React.Component{constructor(){super()this.state = {message:`电影列表`,movies:["fender","jazzmaster","jaguar","brighton"]}}render(){// const list = []// for(let movie of this.state.movies){//     list.push(<li>{movie}</li>)// }return <div><h2>{this.state.message}</h2><ul>{this.state.movies.map((item,index)=><li key={index}>{item}</li>)}</ul></div>}
}class About extends React.Component{constructor(props){super(props)this.state = {counter:0}}increase(){console.log(`加一起`)this.setState({counter:this.state.counter+1})}decrease(){console.log(`减小`)console.log(this)this.setState({counter:this.state.counter-1})}render(){return <div><h2>当前计数:{this.state.counter}</h2><button onClick={this.increase.bind(this)}>增加+</button><button onClick={this.decrease.bind(this)}>减小-</button></div>}
}
export default About
http://www.dtcms.com/a/256293.html

相关文章:

  • Taro 跨端应用性能优化全攻略:从原理到实践
  • 基于强化学习的5G通信网络基站资源动态分配策略matlab性能仿真
  • 【软考高级系统架构论文】论面向服务架构设计及其应用
  • 【科研绘图系列】R语言绘制circos图形(circos plot)
  • 1. 常见K线组合
  • CertiK联创顾荣辉将于港大活动发表演讲,分享Web3安全与发展新视角
  • 【自动鼠标键盘控制器|支持图像识别】
  • 通达信 飞升搏杀大妖股飞升趋势指标
  • Electron 开发桌面应用概述
  • 贪心算法思路详解
  • 【设计模式】4.代理模式
  • 鸿蒙NEXT-鸿蒙三层架构搭建,嵌入HMRouter,实现便捷跳转,新手攻略。(1/3)
  • 黑马头条-数据管理平台
  • 在Linux中,Iptables能做什么?
  • 神经网络中的交叉熵(Cross-Entropy)损失函数详解
  • Spring MVC异常处理机制
  • 借助ChatGPT快速开发图片转PDF的Python工具
  • ubuntu24.4 + ros2 jazzy 安装gazebo
  • 算法-Day04
  • Selenium学习
  • 2016. 增量元素之间的最大差值
  • 力扣刷题(第六十四天)
  • 解决mysql左连接加where就不会保留左表中的全部数据的问题
  • 【转】如何画好架构图:架构思维的三大底层逻辑
  • 冰箱压缩机电机驱动板【IPM部分】
  • ffmpeg(六):图片与视频互转命令
  • 抖音的视频怎么下载下来——下载狗解析工具
  • QC -io 服务器排查报错方式/报错: Failed to convert string to integer of varId variable!“
  • Nginx反向代理解决跨域问题详解
  • 进程间通信、线程间通信