美文网首页
四:React进阶一(类型检查和props,state与rend

四:React进阶一(类型检查和props,state与rend

作者: 废柴阿W | 来源:发表于2018-12-30 09:17 被阅读0次

    类型检查

    • defaultProps 默认属性值
    • propTypes 限制接收的属性类别(仅在开发模式中检测)

    基本写法

    import PropTypes from 'prop-types';
    
    class Greeting extends React.Component {
      render() {
        return (
          <h1>Hello, {this.props.name}</h1>
        );
      }
    }
    
    Greeting.propTypes = {
      name: PropTypes.string
    };
    
    • 使用 `isRequired' 链接上述任何一个,以确保在没有提供 prop 的情况下显示警告。

    • defaultProps 设置默认属性

    //类型检测
    TodoItem.propTypes = {
        content: PropTypes.string,
        deleteItem: PropTypes.func,
        index: PropTypes.number,
        // 你可以使用 `isRequired' 链接上述任何一个,以确保在没有提供 prop 的情况下显示警告。
        test: PropTypes.string.isRequired
    }
    
    //设置默认值
    TodoItem.defaultProps = {
        test: '科比布莱恩特'
    }
    
    • 某种类型之一
     // 一个对象可以是多种类型其中之一
      optionalUnion: PropTypes.oneOfType([
        PropTypes.string,
        PropTypes.number,
        PropTypes.instanceOf(Message)
      ]),
    

    props,state与render函数的关系

    • 当组件的state或者props发生改变时,render函数就会重新执行(自身)
    • 当父组件的render函数执行时,它的子组件的render都将被重新执行

    相关文章

      网友评论

          本文标题:四:React进阶一(类型检查和props,state与rend

          本文链接:https://www.haomeiwen.com/subject/jckskqtx.html