React(0.13) 利用componentDidMount 方法设置一个定时器

简介: hello world React.js var Hello = React.
<html>
    <head>
        <title>hello world React.js</title>
        <script src="build_0.13/react.min.js"></script>
        <script src="build_0.13/JSXTransformer.js"></script>
    </head>
    <body>
        <div id="e"></div>
        <script type="text/jsx">
            var Hello = React.createClass({
                    getInitialState:function(){
                        return {opacity:1.0};
                    },
                    componentDidMount:function(){
                        this.timer = setInterval(function(){
                            var opacity = this.state.opacity;
                            opacity -= 0.1;
                            if(opacity < 0.1){
                                opacity = 1.0
                            }
                            
                            this.setState({
                                opacity:opacity
                            });
                        }.bind(this), 100);
                    },
                    render:function(){
                        return (
                            <div style={{opacity:this.state.opacity}}>
                                hello {this.props.name}
                            </div>
                        );
                    }
                });
            
            //添加组件到e中
            React.render(
                <Hello name="world" />,
                document.getElementById("e")
            );
        </script>
    </body>
</html>

 

 

组件的生命周期

组件的生命周期分成三个状态:

  • Mounting:已插入真实 DOM

  • Updating:正在被重新渲染

  • Unmounting:已移出真实 DOM

React 为每个状态都提供了两种处理函数,will 函数在进入状态之前调用,did 函数在进入状态之后调用,三种状态共计五种处理函数。

  • componentWillMount()

  • componentDidMount()

  • componentWillUpdate(object nextProps, object nextState)

  • componentDidUpdate(object prevProps, object prevState)

  • componentWillUnmount()

此外,React 还提供两种特殊状态的处理函数。

  • componentWillReceiveProps(object nextProps):已加载组件收到新的参数时调用

  • shouldComponentUpdate(object nextProps, object nextState):组件判断是否重新渲染时调用

目录
相关文章
|
1月前
|
前端开发
|
1月前
|
Android开发
jmessage-react-plugin的正确引入方法
jmessage-react-plugin的正确引入方法
12 1
|
2月前
|
前端开发 JavaScript 开发者
请详细介绍React挂载阶段的方法。
请详细介绍React挂载阶段的方法。
53 9
|
3月前
|
前端开发 JavaScript
React 组件生命周期方法详解
【8月更文挑战第30天】
47 5
|
2月前
封装react-antd-table组件参数以及方法如rowSelection、pageNum、pageSize、分页方法等等
文章介绍了如何封装React-Antd的Table组件,包括参数和方法,如行选择(rowSelection)、页码(pageNum)、页面大小(pageSize)、分页方法等,以简化在不同表格组件中的重复代码。
59 0
|
3月前
|
前端开发 JavaScript API
学习 React 的方法
【8月更文挑战第26天】学习 React 的方法
37 1
|
3月前
|
前端开发 JavaScript 开发者
React生命周期方法完全指南:深入理解并高效应用每个阶段的钩子——从初始化到卸载的全方位解析
【8月更文挑战第31天】本文详细介绍了React组件生命周期方法,包括初始化、挂载、更新和卸载四个阶段的关键钩子。通过探讨每个阶段的方法,如`componentDidMount`和`componentWillUnmount`,帮助开发者在正确时机执行所需操作,提升应用性能。文章还提供了最佳实践,指导如何避免常见错误并充分利用最新钩子。
90 0
|
3月前
|
前端开发 JavaScript 开发者
React 中的生命周期方法是什么?
【8月更文挑战第31天】
53 0
|
4月前
|
前端开发 Scala
Scala并发编程的react、loop方法详解
在这个例子中,`MyActor`会无限循环接收和处理消息。当收到一个字符串消息时,它会打印出"Received: "加上消息内容。如果收到其他类型的消息,它会打印"Unknown message"。
27 1
|
5月前
|
前端开发 Scala
Scala并发编程的react、loop方法详解
在这个例子中,`MyActor`会无限循环接收和处理消息。当收到一个字符串消息时,它会打印出"Received: "加上消息内容。如果收到其他类型的消息,它会打印"Unknown message"。
31 0