• React的使用方法(脚手架的方法)


    使用react加脚手架创建一个项目:

    • npm install create-react-app -g

    • create-react-app myapp

    • cd myapp

    • yarn start

    npx : 帮助我们更方便的找到本地安装的命令

    • . ode_modules.binwebpack --version# 或者npx webpack --version

    官方网站用法

    • npx create-react-app myapp

    • cd myapp

    • yarn start

    脚手架项目结构:

    1.入口文件:index.js

    // 导入核心模块

    import React from 'react';

    import ReactDOM from 'react-dom';

    // 全局样式

    import './index.css';

    // 入口组件(组件的首字母必须大写)

    import App from './App';

    ReactDOM.render(<App />, document.getElementById('root'));

    2.入口组件

    // 必须导入React模块:JSX依赖于该模块
    import React from 'react';
    // 局部样式
    import './App.css';

    // 组件的定义
    function App() {
    return (
    <div>
    测试
    </div>
    );
    }
    export default App;

    注意样式需要导入:

    import './App.css'

    组件的定义和使用:

    // 函数组件的首字母必须大写
    // 父组件向子组件传值使用props(函数组件就是形参)
    // 数据传递是单向数据流:props属性是只读
    function Test (props) {
      console.log(props)
      return <div>Test:{props.uname}</div>
    }

    // 这里定义了一个App组件
    function App() {
      return (
        <div>
          <div>Hello nihao</div>
          <Test uname='tom' age='12'/>
          <Test uname='jerry'></Test>
          <Tab/>
        </div>
      );
    }
    类组件定义方法:

    class Person {
    constructor(uname, age) {
    this.uname = uname;
    this.age = age;
    }
    showUname () {
    console.log(this.uname)
    }
    }
    var p = new Person('zhangsan', 12)
    p.showUname()

    类的继承

    • 既可以基础父类的属性也可以基础父类的方法

    • 必须在构造函数的第一行调用父类构造函数

    • super一般用于向父类构造函数传递参数

      class Person {
      constructor(uname, age) {
        this.uname = uname;
        this.age = age;
      }
      showUname () {
        console.log(this.uname)
      }
    }
    class Student extends Person {
      constructor(uname, age, score) {
        // 必须在构造函数的第一行调用父类构造函数
        // super一般用于向父类构造函数传递参数
        super(uname, age);
        // 子类除了继承父类的特性之外可以额外添加自己的属性
        this.score = score;
      }
      showInfo () {
        console.log(this.uname + '---' + this.age + '---' + this.score)
      }
    }
    let stu = new Student('lisi', 13, 100)
    stu.showInfo()
    stu.showUname()

     

  • 相关阅读:
    idea 配置 maven 项目
    idea 配置普通web项目
    idea java.lang.OutOfMemoryError: PermGen space
    idea checkout 项目
    物理机自动化装机实现
    prometheus node_exporter相关监控指标
    nginx Linux内核参数的优化
    《高性能 Go 代码工坊》中译
    docker仓库资源的地址修改
    influxdb-1.7.8(centos 7) 部署
  • 原文地址:https://www.cnblogs.com/lxsunny/p/12118278.html
Copyright © 2020-2023  润新知