<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title></head><body><div id="example1"></div><hr><div id="example2"></div><script type="text/javascript" src="../js/react.development.js"></script><script type="text/javascript" src="../js/react-dom.development.js"></script><script type="text/javascript" src="../js/prop-types.js"></script><script type="text/javascript" src="../js/babel.min.js"></script>

<script type="text/babel">    /*    *   需求:自定义用来显示一个人员信息的组件,效果如页面.说明:        1.如果性别没有指定,默认为男        2.如果年龄没有指定,默认为18    * */    //1.定义组件 (简单)    /*function Person(props) {        return (            <ul>                <li>姓名:{props.name}</li>                <li>年龄:{props.age}</li>                <li>性别:{props.sex}</li>            </ul>        )    }*/

    //1.定义组件(复杂)    class Person extends React.Component {

        render() {            console.log(this);            return (                <ul>                    <li>姓名:{this.props.name}</li>                    <li>年龄:{this.props.age}</li>                    <li>性别:{this.props.sex}</li>                </ul>            )        }    }

    //指定属性默认值    Person.defaultProps = {        sex: '男',        age: 18    };    //指定属性值的类型和必要性    Person.propTypes = {        name: PropTypes.string.isRequired,        sex: PropTypes.string,        age: PropTypes.number    };

    //2.渲染组件标签    const person = {        name: 'Tom',        age: 18,        sex: '女'    };    /*    *   ...的作用    *   1.打包    *   function fn(...as) {} fn(1, 2, 3)    *   2.解包    *   const arr1 = [1, 2, 3] const arr2 = [6, ...arr1, 9]    * */    ReactDOM.render(<Person {...person}/>, document.getElementById('example1'));

    const person2 = {        myName: 'Jack',        age: 17    };    ReactDOM.render(<Person name={person2.myName} age={person2.age}/>, document.getElementById('example2'));</script>

</body></html>

08_组件三大属性(2)_props的更多相关文章

  1. React组件三大属性之 refs

    React组件三大属性之 refs refs属性 1) 组件内的标签都可以定义ref属性来标识自己 a. <input type="text" ref={input => ...

  2. React组件三大属性之 props

    React组件三大属性之 props 理解1) 每个组件对象都会有props(properties的简写)属性2) 组件标签的所有属性都保存在props中 作用1) 通过标签属性从组件外向组件内传递变 ...

  3. React组件三大属性之state

    React组件三大属性之state 组件被称为"状态机", 页面的显示是根据组件的state属性的数据来显示 理解1) state是组件对象最重要的属性, 值是对象(可以包含多个数 ...

  4. 09_组件三大属性(3)_refs和事件处理

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 07_组件三大属性(1)_state

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 组件的三大属性state,props,refs与事件处理

    组件的三大属性state state是组件对象最重要的属性, 值是对象(可以包含多个数据),组件被称为"状态机", 通过更新组件的state来更新对应的页面显示(重新渲染组件) 初 ...

  7. React 三大属性state,props,refs以及组件嵌套的应用

    React 三大属性state,props,refs以及组件嵌套的应用 该项目实现了一个简单的表单输入添加列表的内容 代码如下 <!DOCTYPE html> <html> & ...

  8. React组件的属性

    组件的三大属性 state props refs 写组件的要求: 1>组件必须大写 2>组件必须只有一个根元素 state是组件的重要对象 值可以是对象 组件被称之为 状态机 通过跟新组件 ...

  9. vue-learning:29 - component - 组件三大API之三:slot

    组件三大API之三: slot <slot>标签 v-slot指令 普通插槽 有默认值的插槽 具名插槽 作用域插槽 v-slot是Vue 2.6.0引入的一个新语法指令,目的是统一之前sl ...

随机推荐

  1. 学习笔记之HTML 教程 | 菜鸟教程

    HTML 教程 | 菜鸟教程 http://www.runoob.com/html/html-tutorial.html 菜鸟教程在线编辑器 http://www.runoob.com/try/try ...

  2. VS2008--VS2013 各种版本官方下载地址

    很多刚入门的学生都不知道从哪里下载Visual studio 编译器 , 我特闲的纯手工整理了下 Visual Studio 2005 Professional 官方90天试用版 英文版:http:/ ...

  3. Hadoop+Hbas完全分布式安装部署

    Hadoop安装部署基本步骤: 1.安装jdk,配置环境变量. jdk可以去网上自行下载,环境变量如下: 编辑  vim  /etc/profile 文件,添加如下内容: export JAVA_HO ...

  4. [UE4]IsValid方法妙用

    由于UE4中各个对象的创建顺序无法保证,因此可以使用IsValid方法判断一个对象是否有效,如果无效则初始化,如果有效则直接可以使用.

  5. MySQL 捕获有问题的SQL-慢查日志 实例

    启动MySQL慢查日志 set global show_query_log_file = /sql_log/show_log.log set global log_queries_not_using_ ...

  6. spring 配置文件的头部 xmls

    <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w ...

  7. Doris与Hadoop yarn混合部署遇到的坑

    Doris默认端口 Yarn 默认端口: 如图,端口冲突,在混合部署的情况下,会出现2个问题: 1. Yarn ResourceManager启动不起来 解决办法:修改yarn.resourceman ...

  8. MVP与MVC的区别

    MVP的主要思想就是解耦View和Model 先大致从图上看一下MVP和MVC又什么不同: MVC: M : Model 数据模型,就是对数据的封装和保存: V : View 视图界面,相当于布局文件 ...

  9. WPF datagrid 设置表头线与颜色、透明度

    <!--数据网格的列标题样式属性--> <DataGrid.ColumnHeaderStyle> <!--样式类型:DataGridColumnHeader(数据网格列标 ...

  10. 安全测试8_Web安全实战1(DVWA部署)

    1.渗透神器的打造(火狐浏览器的打造) Firebug HackBar(渗透插件) Tamper Data(抓包.截包.改包等功能) Proxy Switcher(代理设置) 2.PHP环境安装(ph ...