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

iis网站在点默认文档的时候报错.网站建设消费调查问卷

iis网站在点默认文档的时候报错.,网站建设消费调查问卷,3d建模培训班有用吗,软文营销常用的方式是什么挂载时更新时 setState触发更新、父组件重新渲染时触发更新forceUpdate触发更新卸载时 react(v17.0.2)的生命周期图谱如下。 相较于16版本,17版本生命周期函数有如下变化: componentWillMount() componentWillUpdate() compone…
  • 挂载时
  • 更新时
    • setState触发更新、父组件重新渲染时触发更新
    • forceUpdate触发更新
  • 卸载时

react(v17.0.2)的生命周期图谱如下。 

在这里插入图片描述 

 

相较于16版本,17版本生命周期函数有如下变化:

componentWillMount()
componentWillUpdate()
componentWillReceiveProps()
+getDerivedStateFromProps(props,state)
+getSnapshotBeforeUpdate(prevProps,prevState)
虽然UNSAFE_componentWillMount、UNSAFE_componentWillUpdate、UNSAFE_componentWillReceiveProps当前依然可用,但在react未来的版本中可能被移除,所以尽量避免使用。更多可以访问如下链接:

 https://react.docschina.org/docs/react-component.html。
https://react.docschina.org/blog/2018/03/27/update-on-async-rendering.html。

挂载时

组件挂载时,会依次调用如下生命周期函数:

  1. constructor(props)
  2. static getDerivedStateFromProps(props)
  3. render()
  4. componentDidMount()

 其中,getDerivedStateFromProps必须用static修饰,它是类上的方法。且必须返回null或者状态对象(State Obect)。

getDerivedStateFromProps在实际开发中几乎不用,仅适用于state唯一取决于props的场景。

 

更新时

setState触发更新、父组件重新渲染时触发更新

setState、父组件重新渲染触发更新时,会依次调用如下生命周期函数:

1、static getDerivedStateFromProps()
2、shouldComponentUpdate(nextProps,nextState)
3、render()
4、getSnapshotBeforeUpdate(prevProps,prevState)
5、componentDidUpdate(prevProps,prevState,snapshot)

其中,getSnapshotBeforeUpdate(prevProps,prevState)必须返回null或任意快照值(Snapshot Value,undefined除外)。返回的快照值将作为componentDidUpdate的第三个形参。

forceUpdate触发更新

forceUpdate触发更新,会依次调用以下生命周期函数:

  1. static getDerivedStateFromProps()
  2. render()
  3. getSnapshotBeforeUpdate()
  4. componentDidUpdate()

 

卸载时

组件卸载时,会调用生命周期函数:

  1. componentWillUnmount()

在这里插入图片描述

 

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>test</title><script src="https://unpkg.com/react@17.0.2/umd/react.development.js"></script><script src="https://unpkg.com/react-dom@17.0.2/umd/react-dom.development.js"></script><script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
</head><body><div id="app"></div><script type="text/babel">class Count extends React.Component{constructor(props){console.log("Count---constructor");super(props);this.state = {count:0}}componentDidMount(){console.log("Count---componentDidMount");}static getDerivedStateFromProps(){console.log("Count---getDerivedStateFromProps");return null;}shouldComponentUpdate(){console.log("Count---shouldComponentUpdate");return true;}getSnapshotBeforeUpdate(){console.log("Count---getSnapshotBeforeUpdate");return null;}componentDidUpdate(){console.log("Count---componentDidUpdate");}componentWillUnmount(){console.log("Count---componentWillUnmount");}death = () => {ReactDOM.unmountComponentAtNode(document.getElementById("app"));}add = () => {const {count} = this.state;this.setState({count:count+1})}force = () => {this.forceUpdate();}render(){console.log("Count---render");const {count} = this.state;const {add,death,force} = this;return (<div><h2>当前值为:{count}</h2><button onClick={add}>点我加1</button>&nbsp;<button onClick={force}>强制更新</button>&nbsp;<button onClick={death}>卸载组件</button></div>)}}ReactDOM.render(<Count/>,document.getElementById("app"));</script>
</body></html>

 

http://www.yayakq.cn/news/991858/

相关文章:

  • 济南网站制作哪家专业室内设计网址
  • 建设网站能挣钱吗网站建设项目的工期计划
  • 网站开发培训收费商城网站建设用乐云seo系统
  • 企业建设网站的目的和意义app商城开发
  • 深圳企业医疗网站建设好的文化网站模板下载
  • 在线做ppt的网站wordpress首页标题
  • 洛阳网站备案湖南岳阳网站
  • 网站的域名解析怎么做开通公司网站怎么做分录
  • 畅想网络网站建设推广html5 微网站 源码
  • 美食网站黑米如何做网站建设硬件投入表
  • 鞍山seo青岛关键词优化平台
  • 建设网站服务商h5app开发
  • 网站经常被攻击一个虚拟空间可以放几个网站
  • 大连开发区规划建设局网站北京网站制作招聘
  • 广西建设厅办事大厅网站360网站提交入口地址
  • 南康网站建设南康wordpress调用插件吗
  • 自己做的小网站如何发布建设门户网站的请示
  • 免费自己制作网站教程做关键词优化需要修改网站标题
  • 网站做不做双解析长尾关键词挖掘词
  • 免费阅读网站软件asp做网站基本过程
  • 汕头好的建站网站没有网站可以做seo吗
  • 商城网站设计注意什么企业营销网站模板
  • 网站怎么在百度做推广方案意大利做包招工的网站
  • 做设计开店的网站网站超大文件上传
  • 英文网站建设的原因用天地图做网站
  • 苏州网站建设基础型新手怎么学代码编程
  • 部门将网站建设的需求电子商务网站运营与管理
  • 自助网站建设怎么建设抖音代运营海报
  • 旅游网站首页设计公司网站开发人员的的工资多少钱
  • 网站地图怎么使用哪些平台可以做推广