React useEffect使用

第一

export default function App() {

const [name,setname] = useState('huhu')

useEffect(()=>{

setname(name.substring(0,1).toUpperCase()+name.substring(1))

},[name])

//[name,age]//可以有多个参数

//带参数,第一次默认执行一次,第二次name更新也会执行

return (

<div>

app={name}

<button onClick={()=>{

setname('xiaoming')

}}>

click

</button>

</div>

)

}

第二

import React, { Component, useEffect } from 'react'

export default class App extends Component {

state = {

isCreate : true

}

render() {

return (

<div>

<button onClick={()=>{

this.setState({

isCreate:!this.state.isCreate

})

}}>点击</button>

{/* { this.state.isCreate?<Child />:'' } */}

{ this.state.isCreate && <Child /> }

</div>

)

}

}

function Child(props){

useEffect(()=>{

window.onresize = ()=>{

console.log('resize')

}

var timer = setInterval(() => {

console.log(1234)

}, 1000);

// 点击之后只执行一次

return()=>{

console.log('组件销毁')

window.onresize = null;

clearInterval(timer)

}

},[])

return <div>

child

</div>

}

相关推荐
东方翱翔5 分钟前
CSS的三种基本选择器
前端·css
Fan_web27 分钟前
JavaScript高级——闭包应用-自定义js模块
开发语言·前端·javascript·css·html
yanglamei196235 分钟前
基于GIKT深度知识追踪模型的习题推荐系统源代码+数据库+使用说明,后端采用flask,前端采用vue
前端·数据库·flask
千穹凌帝36 分钟前
SpinalHDL之结构(二)
开发语言·前端·fpga开发
dot.Net安全矩阵1 小时前
.NET内网实战:通过命令行解密Web.config
前端·学习·安全·web安全·矩阵·.net
叫我:松哥1 小时前
基于Python flask的医院管理学院,医生能够增加/删除/修改/删除病人的数据信息,有可视化分析
javascript·后端·python·mysql·信息可视化·flask·bootstrap
Hellc0071 小时前
MacOS升级ruby版本
前端·macos·ruby
前端西瓜哥1 小时前
贝塞尔曲线算法:求贝塞尔曲线和直线的交点
前端·算法
又写了一天BUG1 小时前
npm install安装缓慢及npm更换源
前端·npm·node.js
cc蒲公英1 小时前
Vue2+vue-office/excel 实现在线加载Excel文件预览
前端·vue.js·excel