zoukankan      html  css  js  c++  java
  • react初学

    写一个显示时间日期的

    <!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="example"></div>
    <script type="text/babel">
        let element;
        function clock() {
            element = (
                <div>
                    <h1>Hello, World</h1>
                    <h2>现在是{new Date().toLocaleTimeString()}</h2>
                </div>
            );
            ReactDOM.render(
                element,
                document.getElementById('example')
            );
        }
        clock();
        setInterval(clock,1000);
        //console.log(element);
    
    
    </script>
    
    </body>
    </html>

    注意如果要动态的显示时间的话reactDom要放在函数里面,因为这样才会多次调用函数。

     let element;
        function clock() {
            element = (
                <div>
                    <h1>Hello, World</h1>
                    <h2>现在是{new Date().toLocaleTimeString()}</h2>
                </div>
            );
        }
        clock();
        ReactDOM.render(
                element,
                document.getElementById('example')
            );
        setInterval(clock,1000);

    注意不能写成这样,这样子的话不会动态的显示时间,虽然element会动态的改变,但是的话,render还是只会执行一次

    -------------------------------------------------------------------------------------------------------------------------------------------------------------

    关于react里的this,第一次写组件

    <script type="text/babel">
        class Clock extends React.Component {
            constructor(props) {
                super(props);
                this.state = {date: new Date()};
        }
        render() {
                return (
                    <div>
                        <h1>Hello, World</h1>
                        {console.log(this)}//输出为Clock组件
                        <h2>现在是{this.state.date.toLocaleDateString()}</h2>
                    </div>
                );
        }
        }
        ReactDOM.render(
            <Clock />,
            document.getElementById('example')
        );
    </script>

    要理解this的指向问题,直接把组件看出一个对象

    然后render函数看成为一个方法,那么render又是在Clock里面所以this就指向了Clock

    还有就是在写代码的时候区分开函数的书写方式,就好像代码里面constructor一样,注意里面分号 ; 的用法 ,以及还有一个传入参数的位置

    还要理解一下props这个组件的属性,它是组件的属性,但是这个属性又是一个对象,所以里面可以装好多属性

  • 相关阅读:
    Java练习 SDUT-3328_JAVA判断合法标识符
    问题2:css图片、文字居中
    问题1:jquery实现全选功能,第二次失效(已解决)
    问题2:input、textarea、submit 宽度设置为100%,但显示宽度不一致
    问题1:设置了text-overflow : ellipsis未起作用
    问题1:canvas绘制图片加载不出来
    问题1:鼠标指向导航栏li,但li中a样式未改变
    Shell工具| 流程控制
    Hadoop |集群的搭建
    MySQL高级01
  • 原文地址:https://www.cnblogs.com/WildSky/p/11229674.html
Copyright © 2011-2022 走看看