首页 > 其他分享 >react生命周期

react生命周期

时间:2022-09-01 22:56:26浏览次数:43  
标签:opacity 生命周期 react state test document

-

生命周期回调函数----生命周期钩子函数-----生命周期函数

<!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>引出生命周期.</title>
</head>
<body>
  <!-- 准备一个容器 -->
  <div id="test"></div>
  <!-- 引入react核心库 -->
  <script src="https://cdn.bootcdn.net/ajax/libs/react/18.2.0/umd/react.development.min.js"></script>
  <!-- 引入react-dom, 用于支持react操作dom, 需要在核心库之后引入 -->
  <script src="https://cdn.bootcdn.net/ajax/libs/react-dom/18.2.0/umd/react-dom.development.min.js"></script>
  <!-- 引入babel.js,用于将jsx转化为js -->
  <script src="https://cdn.bootcdn.net/ajax/libs/babel-standalone/7.18.7/babel.min.js"></script>
  <!-- 引入prop-types -->
  <script src="https://cdn.bootcdn.net/ajax/libs/prop-types/15.8.1/prop-types.min.js"></script>
  <script type="text/babel">
    class Life extends React.Component {
      state = { opacity: 0 };

      death = () => {
        // 卸载组件
        ReactDOM.unmountComponentAtNode(document.getElementById('test'))
      }

      // 组件挂载完毕
      componentDidMount() {
        this.timer = setInterval(() => {
          let { opacity } = this.state;
          opacity -= 0.1;
          console.log(opacity, 'opacity===');
          if(opacity <= 0) opacity = 1;
          this.setState({ opacity })
        }, 200);
      }
      // 组件即将卸载
      componentWillUnmount() {
        clearInterval(this.timer)
      }

      render() {
        return (
          <div>
            <h2 style={{ opacity: this.state.opacity }}>react学不会怎么办?</h2>
            <button onClick={this.death}>不活了</button>
          </div>
        )
      }
    }
    ReactDOM.render(<Life />, document.getElementById('test'))
  </script>
</body>
</html>

 

 

 

 

-

标签:opacity,生命周期,react,state,test,document
From: https://www.cnblogs.com/fqh123/p/16648121.html

相关文章

  • react 启动报错 ERROR in ./node_modules/fs-extra/lib/copy/copy-sync.js 5:13-28
    项目运行好好的,然后就报一堆错误起初我以为我安装了依赖倒置的问题,后来我只输出helloworld都出错。折腾两晚上。。。还是度娘帮了我Compiledwithproblems:XERROR......
  • Django请求生命周期与反向解析
    Django请求生命周期与反向解析Django请求生命周期流程图Django路由匹配(多版本)1.路由 path('网址后缀',函数名(类名)) 一旦网址后缀匹配上了就会自动执行后面的函数......
  • React HTML 编辑器:没你想的那么难
    ReactHTML编辑器:没你想的那么难Photoby莫里茨金德勒on不飞溅Web开发人员在开发Web项目时很少使用单一工具。选择正确的工具和框架组合以创建出色的最终结果......
  • 5 个加速 React 开发的工具
    5个加速React开发的工具React工具、技巧和最佳实践将帮助您更快地构建应用程序Original照片by凯利@PexelsReact没有为样式、数据获取、路由或动画规定惯用的......
  • React HTML 编辑器:没你想的那么难
    ReactHTML编辑器:没你想的那么难Photoby莫里茨金德勒on不飞溅Web开发人员在开发Web项目时很少使用单一工具。选择正确的工具和框架组合以创建出色的最终结果......
  • React报错之Rendered more hooks than during the previous render
    正文从这开始~总览当我们有条件地调用一个钩子或在所有钩子运行之前提前返回时,会产生"Renderedmorehooksthanduringthepreviousrender"错误。为了解决该错误,将所......
  • React + Antd实现动态切换主题功能
    本文摘自【前端早茶】React+Antd实现动态切换主题功能前言最近去antdesign官网查阅资料,发现antdesign最新版本已经更新到了4.17.x,于是比较粗略的看了一下最近几......
  • 单击 [React] 启动组件
    单击[React]启动组件Photoby劳塔罗·安德里亚尼on不飞溅创建我的投资组合网站我想知道如何为移动响应创建一个抽屉。那时创建模态的想法出现了,但出现了另一个......
  • 在 React 应用程序中使用 Moralis 的 Web3 身份验证
    在React应用程序中使用Moralis的Web3身份验证Web3身份验证在构建时非常重要去中心化应用(dApp)。因此,区块链开发人员必须知道如何构建Web3登录。我们将使用领先......
  • 在 React 中无压力地创建表单
    在React中无压力地创建表单管理验证、错误、修改字段列表等的简单方法Photoby泰勒尼克斯on不飞溅老实说,有很多方法可以管理表单的状态。现在我们有很多选择。......