react PropTypes校验传递的值操作示例


Posted in Javascript onApril 28, 2020

本文实例讲述了react PropTypes校验传递的值操作。分享给大家供大家参考,具体如下:

校验传递的值:

import React, { Component, Fragment } from 'react';
import List from './List.js';
 
class Test extends Component {
  constructor(props) {
    super(props);
    this.state={
      inputValue:'aaa',
      list:['睡觉','打游戏'],
    }
    // this.add=this.add.bind(this);
  }
 
  addList() {
    this.setState({
      list:[...this.state.list,this.state.inputValue],
      inputValue:''
    })
  }
 
  change(e) {
    this.setState({
      inputValue:e.target.value
    })
  }
 
  delete(i) {
    // console.log(i);
    const list = this.state.list;
    list.splice(i,1);
    this.setState({
      list:list
    })
  }
 
  render() { 
    return (
      <Fragment>
      <div>
        <input value={this.state.inputValue} onChange={this.change.bind(this)}/>
        <button onClick={this.addList.bind(this)}>添加</button>
      </div>
      <ul>
        {
          this.state.list.map((v,i)=>{
            return(
                <List key={i} content={v} index={i} delete={this.delete.bind(this)} />
            );
          })
        }
      </ul>
      </Fragment>
    );
  }
}
export default Test;
import React, { Component } from 'react';
import PropTypes from 'prop-types';
 
class List extends Component {
  constructor(props) {
    super(props);
    this.delete = this.delete.bind(this);
  }
 
  render() { 
    return (
    <li
      onClick={this.delete}
    >{this.props.name}{this.props.content}</li>
    );
  }
 
  delete=() => {
    this.props.delete(this.props.index);
  }
}
 
//传值校验
 
List.propTypes={
  name:PropTypes.string.isRequired,
  content:PropTypes.string,
  index:PropTypes.number,
  delete:PropTypes.func
}
 
//设置默认值:
 
List.defaultProps={
  name:'张三'
}
 
export default List;

希望本文所述对大家react程序设计有所帮助。

Javascript 相关文章推荐
jQuery中live方法的重复绑定说明
Oct 21 Javascript
js获取电脑分辨率的思路及操作
Nov 22 Javascript
javascript打印html内容功能的方法示例
Nov 28 Javascript
JS+JSP checkBox 全选具体实现
Jan 02 Javascript
javascript基于HTML5 canvas制作画箭头组件
Jun 25 Javascript
JS脚本实现动态给标签控件添加事件的方法
Jun 02 Javascript
简单了解JavaScript操作XPath的一些基本方法
Jun 03 Javascript
利用Bootstrap实现表格复选框checkbox全选
Dec 21 Javascript
vue组件中iview的modal组件爬坑问题之modal的显示与否应该是使用v-show
Apr 12 Javascript
微信小程序3D轮播实现代码
Sep 19 Javascript
在vue中根据光标的显示与消失实现下拉列表
Sep 29 Javascript
js+css3实现炫酷时钟
Aug 18 Javascript
vue 百度地图(vue-baidu-map)绘制方向箭头折线实例代码详解
Apr 28 #Javascript
Vue + Scss 动态切换主题颜色实现换肤的示例代码
Apr 27 #Javascript
浅析vue cli3 封装Svgicon组件正确姿势(推荐)
Apr 27 #Javascript
react组件基本用法示例小结
Apr 27 #Javascript
react基本安装与测试示例
Apr 27 #Javascript
使用konva和vue-konva库实现拖拽滑块验证功能
Apr 27 #Javascript
JS浏览器BOM常见操作实例详解
Apr 27 #Javascript
You might like
thinkphp模板用法和内容输出实例
2014/11/28 PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
2017/08/02 PHP
PHP实现数据库统计时间戳按天分组输出数据的方法
2017/10/10 PHP
使用laravel和ajax实现整个页面无刷新的操作方法
2019/10/03 PHP
xml 与javascript结合的问题解决方法
2007/03/24 Javascript
Tab切换组件(选项卡功能)实例代码
2013/11/21 Javascript
js简单抽奖代码
2015/01/16 Javascript
JavaScript中的原型prototype属性使用详解
2015/06/05 Javascript
js判断主流浏览器类型和版本号的简单实现代码
2016/05/26 Javascript
jquery模拟多级复选框效果的简单实例
2016/06/08 Javascript
js选项卡的制作方法
2017/01/23 Javascript
详解Angular.js数据绑定时自动转义html标签及内容
2017/03/30 Javascript
nodejs调取微信收货地址的方法
2017/12/20 NodeJs
Vue2.0 事件的广播与接收(观察者模式)
2018/03/14 Javascript
Node.js利用console输出日志文件的方法示例
2018/04/27 Javascript
微信小程序网络请求封装示例
2018/07/24 Javascript
vue resource发送请求的几种方式
2019/09/30 Javascript
Javascript Web Worker使用过程解析
2020/03/16 Javascript
Python中使用 Selenium 实现网页截图实例
2014/07/18 Python
利用 Monkey 命令操作屏幕快速滑动
2016/12/07 Python
tensorflow 重置/清除计算图的实现
2020/01/19 Python
css3实现平移效果(transfrom:translate)的示例
2020/11/13 HTML / CSS
英国地毯卖家:The Rug Seller
2019/07/18 全球购物
数据库连接池的工作原理
2012/09/26 面试题
临床医学系毕业生推荐信
2013/11/09 职场文书
业务代表的岗位职责
2013/11/16 职场文书
求职推荐信范文
2013/12/01 职场文书
个人教师自我评价范文
2013/12/02 职场文书
医药专业应届毕业生求职信范文
2014/01/01 职场文书
《尊严》教学反思
2014/02/11 职场文书
讲文明树新风公益广告宣传方案
2014/02/25 职场文书
生日礼品店创业计划书范文
2014/03/21 职场文书
春节联欢晚会主持词范文
2014/03/24 职场文书
大学新生入学教育方案
2014/05/16 职场文书
给客户的检讨书
2014/12/21 职场文书
525心理健康活动总结
2015/05/08 职场文书