2018-10-09 11:10:55 qq_37489307 阅读数 324
  • 2019 react入门至高阶实战,含react hooks

    这是2019 react入门到高级新课程 学习react,不仅能带来技术提升,同时提高开发效率和体验,更能带来好的就业机会。 本课程主要分为以下几个部分:  一,前端工程化基础?  主要学习node和npm、yarn的基本用法  二,es6语法 学习必备的es6常用语法 。 三,react基础知识  学习如何搭建react项目,以及react组件,jsx语法、css处理方案、生命周期等基础知识。 并且根据这些知识开发一个个人网站。 四,react进阶知识?? 学习表单的处理,事件处理,Portals的使用,以及数据请求和API管理等进阶知识。 五,react高阶知识?? 学习react高级特性,react hooks,以及整个react生态体系的构成和应用 。 努力学习哟,带你精通react。

    1925 人正在学习 去看看 梁富城
	<script type="text/babel">
		class Header extends React.Component{
			constructor(){
				super();
				this.state={
					time:new Date().toLocaleTimeString()
				}
			}
			render(){
				return(
					<div>
						<h1>{this.state.time}</h1>
						<button onClick={this.handleClick.bind(this)}>开始</button><br/><br/>
						<button onClick={this.stopTime.bind(this)}>停止</button>
					</div>
				)
			}
			handleClick(){
				let self=this;
				
				this.state.timeId=setInterval(function(){
					self.setState({
						time:new Date().toLocaleTimeString()
					})
				},1000)
				
			}
			stopTime(){
				clearInterval(this.state.timeId);
			}
		}
		const ele=(
				<div>
					<Header/>
				</div>
			);
		
		ReactDOM.render(
			ele,
			document.getElementById('app')
		)
	</script>
</body>
2018-09-29 10:22:49 weixin_43307492 阅读数 3936
  • 2019 react入门至高阶实战,含react hooks

    这是2019 react入门到高级新课程 学习react,不仅能带来技术提升,同时提高开发效率和体验,更能带来好的就业机会。 本课程主要分为以下几个部分:  一,前端工程化基础?  主要学习node和npm、yarn的基本用法  二,es6语法 学习必备的es6常用语法 。 三,react基础知识  学习如何搭建react项目,以及react组件,jsx语法、css处理方案、生命周期等基础知识。 并且根据这些知识开发一个个人网站。 四,react进阶知识?? 学习表单的处理,事件处理,Portals的使用,以及数据请求和API管理等进阶知识。 五,react高阶知识?? 学习react高级特性,react hooks,以及整个react生态体系的构成和应用 。 努力学习哟,带你精通react。

    1925 人正在学习 去看看 梁富城

React倒计时组件

倒计时组件只精确到秒。

效果:
在这里插入图片描述

import React, {Component} from 'react'

export default class countDown extends Component {
  constructor(props) {
    super(props);
    this.state = {
      day: 0,
      hour: 0,
      minute: 0,
      second: 0
    }
  }
  componentDidMount() {
    if(this.props.endTime){
      let endTime = this.props.endTime.replace(/-/g, "/");
      this.countFun(endTime);
    }
  }
  //组件卸载取消倒计时
  componentWillUnmount(){
    clearInterval(this.timer);
  }
  
  countFun = (time) => {
    let end_time = new Date(time).getTime(),
    sys_second = (end_time - new Date().getTime());
    this.timer = setInterval(() => {
    //防止倒计时出现负数
      if (sys_second > 1000) {
        sys_second -= 1000;
        let day = Math.floor((sys_second / 1000 / 3600) / 24);
        let hour = Math.floor((sys_second / 1000 / 3600) % 24);
        let minute = Math.floor((sys_second / 1000 / 60) % 60);
        let second = Math.floor(sys_second / 1000 % 60);
        this.setState({
          day:day,
          hour:hour < 10 ? "0" + hour : hour,
          minute:minute < 10 ? "0" + minute : minute,
          second:second < 10 ? "0" + second : second
        })
      } else {
        clearInterval(this.timer);
        //倒计时结束时触发父组件的方法
        //this.props.timeEnd();
      }
    }, 1000);
  }
  render() {
    return (
      <span>{this.state.day}{this.state.hour}:{this.state.minute}:{this.state.second}</span>
    )
  }
}

2019-06-21 16:19:29 xiaodi520520 阅读数 125
  • 2019 react入门至高阶实战,含react hooks

    这是2019 react入门到高级新课程 学习react,不仅能带来技术提升,同时提高开发效率和体验,更能带来好的就业机会。 本课程主要分为以下几个部分:  一,前端工程化基础?  主要学习node和npm、yarn的基本用法  二,es6语法 学习必备的es6常用语法 。 三,react基础知识  学习如何搭建react项目,以及react组件,jsx语法、css处理方案、生命周期等基础知识。 并且根据这些知识开发一个个人网站。 四,react进阶知识?? 学习表单的处理,事件处理,Portals的使用,以及数据请求和API管理等进阶知识。 五,react高阶知识?? 学习react高级特性,react hooks,以及整个react生态体系的构成和应用 。 努力学习哟,带你精通react。

    1925 人正在学习 去看看 梁富城

效果:
在这里插入图片描述
完整代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Hello React!</title>
<script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script>
<script src="https://cdn.staticfile.org/react-dom/16.4.0/umd/react-dom.development.js"></script>
<script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.min.js"></script>
</head>
<body>
 
<div id="root"></div>
<script type="text/babel">

class Clock extends React.Component{
    constructor(props){
        super(props);
        this.state={
            date:new Date()
        }
    }
    render(){
        return (
            <div>
            <h1>你好</h1>
            <h2>现在的时间是:{this.state.date.toLocaleTimeString()}</h2>
            </div>
        )
    }
    componentDidMount(){
       this.timeId= setInterval(()=>{
            this.tick()
        },1000)
    }
    tick(){
        this.setState({
            date:new Date()
        })
    }
    componentWillUnmount(){
        clearInterval(this.timeId)
    }
}
ReactDOM.render(
    <Clock/>,
    document.getElementById('root')
)
</script>
</body>
</html>
2018-09-01 14:24:37 Beamon__ 阅读数 1393
  • 2019 react入门至高阶实战,含react hooks

    这是2019 react入门到高级新课程 学习react,不仅能带来技术提升,同时提高开发效率和体验,更能带来好的就业机会。 本课程主要分为以下几个部分:  一,前端工程化基础?  主要学习node和npm、yarn的基本用法  二,es6语法 学习必备的es6常用语法 。 三,react基础知识  学习如何搭建react项目,以及react组件,jsx语法、css处理方案、生命周期等基础知识。 并且根据这些知识开发一个个人网站。 四,react进阶知识?? 学习表单的处理,事件处理,Portals的使用,以及数据请求和API管理等进阶知识。 五,react高阶知识?? 学习react高级特性,react hooks,以及整个react生态体系的构成和应用 。 努力学习哟,带你精通react。

    1925 人正在学习 去看看 梁富城

准备工作:

1.在state中定义倒计时时间;

constructor(props){
    super(props);
    this.state={
        time: 60, 
    }
}

2.添加定时器方法;

// 倒计时
time = () => {
    // 清除可能存在的定时器
    clearInterval(this.timer)
    // 创建(重新赋值)定时器
    this.timer = setInterval(()=>{
        // 当前时间回显-1
        this.setState({
            time:this.state.time-1
        },()=>{
            // 判断修改后时间是否小于1达到最小时间
            if(this.state.time <= 0){
                // 清除定时器
                clearInterval(this.timer)
                // 结束定时器循环
                return
            }
            // 循环自调用
            this.time()
        })
    },1000)
}

3.在组件卸载时清除定时器

componentWillUnmount(){
    clearInterval(this.timer)
}

使用:

在需要使用的地方直接调用time方法即可;

ps:页面加载完成后调用案例如下

componentDidMount(){
    this.time()
}

 

2019-01-23 15:13:03 zsm4623 阅读数 707
  • 2019 react入门至高阶实战,含react hooks

    这是2019 react入门到高级新课程 学习react,不仅能带来技术提升,同时提高开发效率和体验,更能带来好的就业机会。 本课程主要分为以下几个部分:  一,前端工程化基础?  主要学习node和npm、yarn的基本用法  二,es6语法 学习必备的es6常用语法 。 三,react基础知识  学习如何搭建react项目,以及react组件,jsx语法、css处理方案、生命周期等基础知识。 并且根据这些知识开发一个个人网站。 四,react进阶知识?? 学习表单的处理,事件处理,Portals的使用,以及数据请求和API管理等进阶知识。 五,react高阶知识?? 学习react高级特性,react hooks,以及整个react生态体系的构成和应用 。 努力学习哟,带你精通react。

    1925 人正在学习 去看看 梁富城

 

function tick() {
  const element = (
    <div>
      <h1>Hello, world!</h1>
      <h2>It is {new Date().toLocaleTimeString()}.</h2>
    </div>
  );
  ReactDOM.render(
    element,
    document.getElementById('root')
  );
}

setInterval(tick, 1000);

 代码解析:

首先整体是由setInterval计时器实现的,在一个函数中声明一个简单的div标签,写上内容,通过render函数渲染到指定的页面容器中,从而实现的。

 

React 60S倒计时

阅读数 44

React Native倒计时

阅读数 1488

没有更多推荐了,返回首页