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 相关文章推荐
javascript Array.remove() 数组删除
Aug 06 Javascript
详解jQuery插件开发中的extend方法
Nov 19 Javascript
javascript获取文档坐标和视口坐标
May 26 Javascript
jQuery实现调整表格单列顺序完整实例
Jun 20 Javascript
Vue 固定头 固定列 点击表头可排序的表格组件
Nov 25 Javascript
javascript用rem来做响应式开发
Jan 13 Javascript
vue mint-ui tabbar变组件使用
May 04 Javascript
Vue使用vux-ui自定义表单验证遇到的问题及解决方法
May 10 Javascript
Layui 数据表格批量删除和多条件搜索的实例
Sep 04 Javascript
js 根据对象数组中的属性进行排序实现代码
Sep 12 Javascript
Javascript新手入门之字符串拼接与变量的应用
Dec 03 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
Dec 04 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
推荐个功能齐全的发送PHP邮件类
2007/01/03 PHP
关于UEditor编辑器远程图片上传失败的解决办法
2012/08/31 PHP
对象失去焦点时自己动提交数据的实现代码
2012/11/06 PHP
php指定函数参数默认值示例代码
2013/12/04 PHP
PHP中exec函数和shell_exec函数的区别
2014/08/20 PHP
php以post形式发送xml的方法
2014/11/04 PHP
SeaJS入门教程系列之SeaJS介绍(一)
2014/03/03 Javascript
基于jquery animate操作css样式属性小结
2015/11/27 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
谈谈对JavaScript原生拖放的深入理解
2016/09/20 Javascript
AngularJS实现DOM元素的显示与隐藏功能
2016/11/22 Javascript
微信小程序 如何引入外部字体库iconfont的图标
2018/01/31 Javascript
实例详解vue.js浅度监听和深度监听及watch用法
2018/08/16 Javascript
微信小程序的开发范式BeautyWe.js入门详解
2019/07/10 Javascript
微信小程序在其他页面监听globalData中值的变化
2019/07/15 Javascript
vue动态合并单元格并添加小计合计功能示例
2020/11/26 Vue.js
Python实现处理管道的方法
2015/06/04 Python
python 系统调用的实例详解
2017/07/11 Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
2018/05/10 Python
python使用time、datetime返回工作日列表实例代码
2019/05/09 Python
Python中and和or如何使用
2020/05/28 Python
Keras之fit_generator与train_on_batch用法
2020/06/17 Python
python使用隐式循环快速求和的实现示例
2020/09/11 Python
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
html5唤起app的方法
2017/11/30 HTML / CSS
饿了么订餐官网:外卖、网上订餐
2019/06/28 全球购物
.NET方向面试题
2014/11/20 面试题
精选干货:Java精选笔试题附答案
2014/01/18 面试题
社区优秀志愿者材料
2014/02/02 职场文书
科研课题实施方案
2014/03/18 职场文书
签约仪式主持词
2014/03/19 职场文书
美术社团活动总结
2014/06/27 职场文书
国家税务局领导班子对照检查材料思想汇报
2014/10/04 职场文书
离婚纠纷代理词
2015/05/23 职场文书
Python OpenCV快速入门教程
2021/04/17 Python
spring cloud gateway中如何读取请求参数
2021/07/15 Java/Android