zoukankan      html  css  js  c++  java
  • react--入门

    在构建react项目中,一般包含:

      文件夹source:包含了项目中所有的js模块

      index.html:主文件页面,几乎是空的或者提供一个div主要用来包含其他的项目组件

      package.json:包含了项目所需要的所有依赖包

      打包或者构建项目的工具:一般使用的是webpack

    但是现在一般使用的都是快速开发react

      npm install -g create-react-app

      create-react-app projectname

      cd projectname

      npm start

    能快速搭建项目目录

    为了使项目的组织性和更好的维护和添加新功能,应该将组件放在单独的js文件中

    1.基本写法:

      (1)

    import React from 'react';
    
    class Login extends React.Component{
        render(){
            return(
                   <div></div>
            )
        }
    }
    
    export default  Login;

      (2)

    import React,{Component} from 'react';
    
    class Login extends Component{
        render(){
            return(
                <div><div>
            )
        }
    }
    
    export default  Login;

     2.使用变量:

    import React from 'react';
    
    class Login extends React.Component{
        render(){
           let name='React';
            return(
               <div>Hello,{name}</div>
            )
        }
    }
    
    export default  Login;

    3.Props: 数据从父组件传递到子组件,props是组件私有的,是不能被改变的,是有父级控制的

     this.props.参数名:获取通过属性传递的参数

    import React,{Component} from 'react';
    
    class Parent extends Component{
        render(){
            return(
                <div>
                    <ul>
                        <Child name='张良' age='17'></Child>
                        <Child name='韩非' age='24' ></Child>
                        <Child name='卫庄' age='20' ></Child>
                    </ul>
                </div>
            )
        }
    }
    
    class Child extends Component{
        render(){
            return(
                <li>姓名:{this.props.name}--年龄:{this.props.age}</li>
            )
        }
    }
    
    export default Parent

    this.props.children:获取该组件内部的全部内容

    import React,{Component} from 'react';
    
    class Parent extends Component{
        render(){
            return(
                <div>
                    <ul>
                        <Child name='张良' age='17'>儒家三叔公</Child>
                        <Child name='韩非' age='24' >韩国九公子</Child>
                        <Child name='卫庄' age='20' >流沙领导人</Child>
                    </ul>
                </div>
            )
        }
    }
    
    class Child extends Component{
        render(){
            return(
                <li>姓名:{this.props.name}--年龄:{this.props.age}--{this.props.children}</li>
            )
        }
    }
    
    export default Parent

     4.父组件数据传递到子组件及其下级demo:

      注意事项:

      1.在提取公共组件时,组件应该很小,一个组件只做一件事,当此组件变大的时候就应该考虑将它拆分成更小  的单元

      2.根据项目的布局和线框图,决定组件之间的层次结构

      3.提取组件,趋向于分离出代表数据模型的部分

    5.state:数据动态交互

  • 相关阅读:
    水晶报表关于System.Web.Extensions报错的问题
    个人下一步学习计划
    一个老程序员对数据库的一点纠结
    Visual SourceSafe权限配置记录
    SQL SERVER 2008代码折叠小技巧
    用命令行自动备份数据库到其他服务器
    CrystalReports 2008序列号留档
    ····
    C语言中的static
    页面自动刷新的几种方法
  • 原文地址:https://www.cnblogs.com/VaeVae/p/10271070.html
Copyright © 2011-2022 走看看