class RadioGroup extends React.Component {
getRadioComponent(item, index) {
return <div className="custom-radio" key={this.props.name + '-' + index}>
<input id={item.id} type="radio" name={this.props.name} value={item.value} checked={this.props.checkedValue == item.value} disabled={item.disabled} onChange={this.props.checkChanged} />
<label htmlFor={item.id} disabled={item.disabled}>{item.text}</label>
</div>
} render() {
let
className = this.props.isHorizontal ? 'horizontal' : 'normal',
items = this.props.items || [];
return <div id={this.props.id} className={className}>
{
items.map((item, index) => {
if (this.props.isHorizontal)
return this.getRadioComponent(item, index);
else
return <div key={index}>{this.getRadioComponent(item, index)}</div>;
})
}
</div>
}
} export default RadioGroup;

使用:

 const type = {
Auto: 0,
Use: 1
}
this.state = {
defaultCheckedValue: type.Use,
radioOptions: [
{
id: "id-auto",
value: type.Auto,
text: 'auto'
{
id: "id-use",
value: type.Use,
text: 'use'
}],
} onActionSelectedChange(e, args) {
this.setState(Object.assign(this.state, {
defaultCheckedValue: parseInt(e.currentTarget.value),
}));
}
 <RadioGroup
id={"id"}
name={"dqhan-name"}
isHorizontal={true}
items={this.state.radioOptions}
checkedValue={this.state.defaultCheckedValue}
checkChanged={this.handleRadioChange}
/>

React封装RadioGroup的更多相关文章

  1. 基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中。

    react-amap 这是一个基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中. 文档实例预览: Github Web | Gitee Web 特性 ️ 自动加载高德地 ...

  2. 如何基于 React 封装一个组件

    如何基于 React 封装一个组件 前言 很多小伙伴在第一次尝试封装组件时会和我一样碰到许多问题,比如人家的组件会有 color 属性,我们在使用组件时传入组件文档中说明的属性值如 primary , ...

  3. react封装简单的浏览器顶部加载进度条全局组件

    在项目中经常会有在请求前后加loading或者加加载进度条,一般这些组件都会抽离出来作为全局组件 进度条的插件貌似都不是很符合自己项目中的需求,于是.. 参考nprogress样式,自己在项目中封装组 ...

  4. react封装组织架构递归树

    想用react实现一个递归树,但一些框架里面的有些不符合需求,于是自己写了个,功能比较简单,欢迎批评指正.. react实现这样一个组织架构递归树,下级部门的收起和展开,点击部门名称时请求接口获取下级 ...

  5. 使用react封装评论组件

    首先看我的效果图 我在评论框中输入数据,会在页面进行显示 这个效果图我们进行拆分就是,一个评论组件,一个大的评论列表组件,一个小的评论组件 首先整个页面中有的是我们的评论组件和列表组件 我们输入评论点 ...

  6. react封装通用tab组件

    import React, { Component } from 'react' import PropTypes from 'prop-types' import _ from 'lodash' i ...

  7. react封装基于axios的API请求

    一.最近做的一个后台管理项目,基于antd-pro做的,需要封装基于axios请求,便于开发,直接上代码. import axios from 'axios'; export const Method ...

  8. 在ASP.NET MVC项目中使用React

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:最近在开发钉钉的微应用,考虑到性能和UI库的支持,遂采用了React来开发前端. 目前 ...

  9. React使用笔记(3)-React Event Listener

    Date: 2015-11-28 12:18 Category: Web Tags: JavaScript Author: 刘理想 [toc] 1. 构造基本结构 首先,我们先创建一个按钮,一个输入框 ...

随机推荐

  1. JBoss DataGrid的集群部署与訪问

    集群部署 JDG的缓存模式包含本地(Local)模式和集群(Clustered)模式.本项目採用多节点的Clustered模式部署.数据在多个节点的子集间进行复制.而不是同步拷贝到全部的节点. 使用子 ...

  2. 【Android】8.3 自定义主题

    分类:C#.Android.VS2015: 创建日期:2016-02-17 一.简介 在Android系统中,除了内置的主题外,开发人员还可以自定义主题.一般通过在Resources/value文件夹 ...

  3. 每日英语:China Underwhelmed After First Apple Event

    Apple's roll-out of its latest iPhones landed with a thud in China, the company's biggest foreign ma ...

  4. Filter method example

    The Scala List class filter method implicitly loops over the List/Seq you supply, tests each element ...

  5. 快速了解Log4J

    http://liuzhijun.iteye.com/blog/1746571 ******************** Log4J的三个组件: Logger:日志记录器,负责收集处理日志记录     ...

  6. js队列的实现问题

    所谓队列就是排队的序列问题,有出有进,比如在银行排队办理业务,一般都是前一个办理完成后下一个自动进入队列 <script>  /* * 模拟队列 */ var Qu ={}; //构造函数 ...

  7. eclipse手动build整个project

    eclipse默认是自动build你所编辑的java文件,但是这种自动build的前提是你对该java文件做了修改,因此,有的时候,如果你的class文件因为某种原因丢失了,你又不去手动build,e ...

  8. django数据库基本操作-增删改查(tip)-基本

    补充:django外键保存 #外键保存 form_data = Form_Data() project, is_created = Project_Name.objects.get_or_create ...

  9. ioss使用xcode常用快捷键

    // command+r 运行 //command+.停止 // command+shift+y 弹出打印区 // command+z 回退 //command+shift+z 前进 // comma ...

  10. 【Unity笔记】常用插件

    记录一些常见插件,随时补充. iTween动画插件 原理:插值法,给出初始值和终点值,自动算出中间值. DoTween Tween动画 Playmaker $45 Playmaker由第三方软件商Hu ...