0.es6语法糖

deptList = deptnameList.filter(item => item.rel ===this.state.thUser.orgId);//返回一个新的数组对象
deptList = deptnameList.find(item => item.rel ===this.state.thUser.orgId); //这个返回的是个object 是个对象

Demo (ng2语法)

data:
var types = [
{name: "订单未付款", ids: "14"},
{name: "订单已付款", ids: "10"},
{name: "已收货", ids: "15"},
{name: "已失效", ids: "16"},]

let currentObj = this.newTypes.find(item => item.ids == obj.type);
this.now.typeName = currentObj ? currentObj.name : '';//编辑时回显用户选中的分类文字
const array = [{id: 1, name: 'a'}, {id: 2, name: 'b'}, {id: 3, name: 'c'}];
let obj2 = array.filter(obj => obj.id === 1); //获取id=1的那个对象
console.log('当前对象', obj2);

7.select  //默认需要传入一个字符串,需要一个不重复的key

const selectOptions = [{ value: '0', labelName: '全部' }, { value: '1', labelName: '正确' }, { value: '2', labelName: '错误' }, { value: '3', labelName: '未处理' }];
return [{
type: 'rangeDatePicker',
item: { label: '录入时间' },
name: '__date',
options: {
initialValue: startTime && endTime ? [moment(startTime), moment(endTime)] : [],
},
props: {
placeholder: ['开始时间', '结束时间'],
format: 'YYYY-MM-DD'
}
}, {
type: 'select',
item: { label: '处理状态' },
name: 'zt',
options: {
initialValue: '0'
},
selectOptions: selectOptions.map((item) => ({ value: item.id, label: item.labelName }))
}

1.下拉菜单和单选按钮

import {Form, Input, Row, Col, Button, Card, DatePicker, Radio, Select} from 'antd';
const FormItem = Form.Item;
const RadioGroup = Radio.Group;
const Option = Select.Option;
            
render() {
let optionValue = this.store.user.search_at + '';//后台接口返回的是int类型,组件需要string类型,需要先转换一次
let radioValue = this.store.user.search_from + '';
let sexValue = this.store.user.sex + '';
let statusValue = this.store.user.status + '';
return (
            <FormItem label="时间">
{getFieldDecorator('search_at', {
initialValue: optionValue//加载默认值
})(
<Select>
<Option value="0">全部时间</Option>
<Option value="1">最近一周</Option>
<Option value="2">最近一月</Option>
<Option value="3">最近一年</Option>
</Select>
)}
</FormItem> <FormItem label="关键词位置">
{getFieldDecorator('search_from', {
initialValue: radioValue//加载默认值
})(
<RadioGroup>
<Radio value="1">标题</Radio>
<Radio value="0">标题+正文</Radio>
</RadioGroup>
)}
</FormItem>
)}

2.格式化日期可以在两个位置处理,

第二种,在

render() {}函数里面处理,
 const enterpriseCols = [{
title: '时间',
dataIndex: 'gprq',
key: 'gprq',
render: (text) => {
//console.log('text', text);
if (!text) {
return '';
}
return (text.slice(0, 10));
}
},

3.日期组件:(默认显示当前日期,默认显示当前月的一号)

<DatePicker />


 const startTime = moment().format('YYYY-MM');//当月的一号
const endTime = moment().format('YYYY-MM-DD');//当前日期
//alert(moment.isMoment(endTime));
console.log('endTime',endTime);
//先初始化需要的参数值 //组件中引用
<Form layout="inline" onSubmit={this.handleSubmit}>
<FormItem label="采集开始时间">
{getFieldDecorator('startTime', {
rules: [{
required: true, message: '请选择采集开始时间!',
}],
initialValue: moment(startTime)
})(
<DatePicker/>
)}
</FormItem>
<FormItem label="采集截止时间">
{getFieldDecorator('endTime', {
rules: [{
required: true, message: '请选择采集截止时间!',
}],
initialValue: moment(endTime)
})(
<DatePicker />
)}
</FormItem>
<FormItem>
<Button type="primary" htmlType="submit">查询</Button>
</FormItem>
</Form>

5.react 下拉选择框动态渲染模式

//render() 前面加入下面操作
renderOptions = () => {
const hotWords = this.store.cityList.length === 0 ? [] : this.store.cityList;
if (!hotWords || hotWords.length === 0) {
return <Option value="暂无数据" key='-1'>暂无数据</Option>
}
return hotWords.map((doc,idx) =>
(
<Option key={idx} value={doc.value}>{doc.name}</Option>
)) }; //return前面加入下面操作
const optionElement = this.renderOptions();

<FormItem label="登记区域">
{getFieldDecorator('area', {
// initialValue: "%"渝中区 渝北区 九龙坡区 大渡口区 江北区 沙坪坝区 南岸区 北碚区 巴南区
})(
<Select showSearch style={{width: '12rem'}}
optionFilterProp="children"
onChange={this.handleChange}
filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0}
placeholder="--请选择--">
{optionElement}
</Select>
)}
</FormItem>

7.一个重要的标签dangerouslySetInnerHTML:react界面中使用dom结构

 
{article.description ? <div className="art-abstract">
<h3>内容摘要:</h3>
<p>{article.description}</p>
</div> : ''}
<div className="content" style={{border: '0'}}>
<div className="articleTable" dangerouslySetInnerHTML={{__html: article.content}}>
</div>
</div>
												

react 常用组件整理的更多相关文章

  1. 8. react 常用组件

    griddle-react react-bootstrap react-cropper core-js Material UI superagent restful-error-es6 browser ...

  2. Vue-ui常用组件库整理

    Vue-ui常用组件库整理 查看全部整理内容==> element-ui Element 是由饿了么UED设计.饿了么大前端开发的一套基于 Vue 2.0 的桌面端组件库. 这款是我用了很久的, ...

  3. React Native常用组件在Android和IOS上的不同

    React Native常用组件在Android和IOS上的不同 一.Text组件在两个平台上的不同表现 1.1 height与fontSize 1.1.1只指定font,不指定height 在这种情 ...

  4. vue 和 react 常用包(插件、组件 或 工具)

    vue 和 react  都可以使用的包(只是 纯 js 功能的包) 1.qs : https://blog.csdn.net/sansan_7957/article/details/82227040 ...

  5. React Native之常用组件(View)

    一. JSX和组件的概念 React的核心机制之一就是虚拟DOM:可以在内存中创建的虚拟DOM元素.React利用虚拟DOM来减少对实际DOM的操作从而提升性能.传统的创建方式是: 但这样的代码可读性 ...

  6. beeshell —— 开源的 React Native 组件库

    介绍 beeshell 是一个 React Native 应用的基础组件库,基于 0.53.3 版本,提供一整套开箱即用的高质量组件,包含 JavaScript(以下简称 JS)组件和复合组件(包含 ...

  7. 移动web端的react.js组件化方案

     背景: 随着互联网世界的兴起,web前端开发的方式越来越多,出现了很多种场景开发的前端架构体系,也对前端的要求日益增高,早已经不是靠一个JQuery.js来做前端页面的时代了,而今移动端变化最大,近 ...

  8. React常用的API说明

    楼主刚开始学习react,感受到了他的博大精深,看到很多莫名的用法,不知云云,找了很多没有找到参考手册,只有在中文社区和react官方看了一些,收集了一些比较常用的API,有补充的可以楼下评论补充.后 ...

  9. React Native 组件之TextInput

    React Native 组件之TextInput类似于iOS中的UITextView或者UITextField,是作为一个文字输入的组件,下面的TextInput的用法和相关属性. /** * Sa ...

随机推荐

  1. 转换复杂的JSON对象为 Map对象

    最近项目需要跟客户对接一个webservice接口,客户那传json串过来,属于比较复杂的json串,这里跟大家分享下我项目中所用的解析方法: 该方法需要以下jar package com.test; ...

  2. Git git2.8.1客户端安装教程

    Git git2.8.1客户端安装教程 一 Git介绍 git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开 ...

  3. UFUN函数 UF_CURVE函数(UF_CURVE_create_line、UF_CURVE_create_arc、UF_CURVE_ask_arc_data、UF_CURVE_ask_line_data)

    UF_initialize(); //CSYS_ask_wcs tag_t wcs_id=NULL_TAG; //CSYS_ask_csys_info ]={0.0}; //CURVE_create_ ...

  4. match 和 search 和 indexOf 查找及 正则表达式的 exec 和 test 用法

    function test(){ var name= "1.087"; var abc = "abd wor66k ne78xt"; var reg = /\d ...

  5. python使用jieba实现中文文档分词和去停用词

    分词工具的选择: 现在对于中文分词,分词工具有很多种,比如说:jieba分词.thulac.SnowNLP等.在这篇文档中,笔者使用的jieba分词,并且基于python3环境,选择jieba分词的理 ...

  6. 安装supervisor 失败 :/usr/bin/python: bad interpreter: No such file

    以前在安装python 双版本时将python改为了python2所以找不到python,打开那个echo_supervised_conf然后把 #!/usr/bin/python 改为如图就可以了

  7. Lombok的使用详解与插件安装

    JAVA面向对象编程中的封闭性和安全性.封闭性即对类中的域变量进行封闭操作,即用private来修饰他们,如此一来其他类则不能对该变量访问.这样我们就将这些变量封闭在了类内部,这样就提高了数据的安全性 ...

  8. Linux 查看文件权限命令ls -l 输出信息每列所代表的含义

  9. [NOIP2013]华容道 题解

    [NOIP2013]华容道 首先是一种比较显然的做法. 整个棋盘,除了起点,终点和空格,其他的方块是等价的. 对于终点,它始终不会变化,如果搜到终点结束搜索即可,所以我们不需要考虑终点. 所以需要考虑 ...

  10. 经典算法(三) 单链表 反转 & 是否相交/成环 & 求交点 等

    参考文章: 判断链表是否相交:http://treemanfm.iteye.com/blog/2044196 一.单链表反转 链表节点 public class Node { private int ...