antd通過 filterDropdown 自定義按某天時(shí)間搜索功能
更新時(shí)間:2019年08月12日 16:33:16 作者:別樣青春
這篇文章主要介紹了antd通過 filterDropdown 自定義按某天時(shí)間搜索功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
import React, { Component } from 'react'; import { Table, Input, Button, Icon, DatePicker } from 'antd'; import moment from 'moment'; import Highlighter from 'react-highlight-words'; export default class RpoliceRecord extends Component { constructor(props) { super(props); this.state = { searchText: '', } } render() { // 添加搜索 this.getColumnSearchProps = (dataIndex, title) => ({ filterDropdown: ({ setSelectedKeys, selectedKeys, confirm, clearFilters }) => ( <div style={{ padding: 8 }}> <Input ref={node => { this.searchInput = node; }} placeholder={`搜索 ${title}`} value={selectedKeys[0]} onChange={e => setSelectedKeys(e.target.value ? [e.target.value] : [])} onPressEnter={() => this.handleSearch(selectedKeys, confirm)} style={{ width: 188, marginBottom: 8, display: 'block' }} /> <Button type="primary" onClick={() => this.handleSearch(selectedKeys, confirm)} icon="search" size="small" style={{ width: 90, marginRight: 8 }}> 搜索 </Button> <Button onClick={() => this.handleReset(clearFilters)} size="small" style={{ width: 90 }}>重置</Button> </div> ), filterIcon: filtered => ( <Icon type="search" style={{ color: filtered ? '#1890ff' : undefined }} /> ), onFilter: (value, record) => record[dataIndex] .toString() .toLowerCase() .includes(value.toLowerCase()), onFilterDropdownVisibleChange: visible => { if (visible) { setTimeout(() => this.searchInput.select()); } }, render: text => ( <Highlighter highlightStyle={{ backgroundColor: '#ffc069', padding: 0 }} searchWords={[this.state.searchText]} autoEscape textToHighlight={text.toString()} /> ), }); //搜索 this.handleSearch = (selectedKeys, confirm) => { confirm(); console.log(selectedKeys,confirm); this.setState({ searchText: selectedKeys[0] }); }; this.handleSearchtime = (selectedKeys, confirm) => { confirm(); this.setState({ searchText: selectedKeys }); }; //重置 this.handleReset = clearFilters => { clearFilters(); this.setState({ searchText: '' }); }; const columns = [ { title: '報(bào)警時(shí)間', dataIndex: 'time', key: 'time', filterDropdown: ({ setSelectedKeys, selectedKeys, confirm, clearFilters }) => ( <div style={{ padding: 8 }}> <DatePicker placeholder={`搜索時(shí)間`} value={selectedKeys[0]} onChange={dateString => setSelectedKeys(dateString ? [dateString] : [])} onPressEnter={() => this.handleSearch(selectedKeys, confirm)} style={{ width: 188, marginBottom: 8, display: 'block' }}/> <Button type="primary" onClick={() => this.handleSearchtime(moment(selectedKeys[0]._d).format('YYYY-MM-DD'), confirm)} icon="search" size="small" style={{ width: 90, marginRight: 8 }}> 搜索 </Button> <Button onClick={() => this.handleReset(clearFilters)} size="small" style={{ width: 90 }}>重置</Button> </div> ), filterIcon: filtered => ( <Icon type="search" style={{ color: filtered ? '#1890ff' : undefined }} /> ), onFilter: (value, record) => { return record.time.indexOf(moment(value).format('YYYY-MM-DD')) != -1}, render: text => ( <Highlighter highlightStyle={{ backgroundColor: '#ffc069', padding: 0 }} searchWords={[this.state.searchText]} autoEscape textToHighlight={text.toString()} /> ), }, { title: '來電', key: 'callnum', dataIndex: 'callnum', ...this.getColumnSearchProps('callnum', '來電'), }, { title: '時(shí)長', key: 'longtime', dataIndex: 'longtime', } ]; const data = [ { key: '1', time: '2019-07-30 16:31:05', callnum: '13546540218', longtime: '37秒' }, { key: '2', time: '2019-06-24 22:08:05', callnum: '13546540218', longtime: '1分12秒' }, { key: '3', time: '2017-08-15 12:31:05', callnum: '13546540218', longtime: '1分10秒' }, { key: '4', time: '2016-12-30 06:15:00', callnum: '13546540218', longtime: '20秒' } ]; return ( <Table className="accidentTable" columns={columns} dataSource={data} bordered size="small" /> ) } }
總結(jié)
以上所述是小編給大家介紹的antd通過 filterDropdown 自定義按某天時(shí)間搜索功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
基于Token的身份驗(yàn)證之JWT基礎(chǔ)教程
JWT(json web token)是為了在網(wǎng)絡(luò)應(yīng)用環(huán)境間傳遞聲明而執(zhí)行的一種基于JSON的開放標(biāo)準(zhǔn)。下面這篇文章主要給大家介紹了關(guān)于基于Token的身份驗(yàn)證之JWT的基礎(chǔ)相關(guān)資料,文中通過示例代碼的非常詳細(xì),需要的朋友可以參考下2018-09-09iisschlp.wsc [88,25] 屬性值無效 : progid
今天在運(yùn)行iisapp.vbs時(shí)候提示W(wǎng)indows Script Component - file://C:WINDOWSsystem32iisschlp.wsc [88,25] 屬性值無效 : progid,原來是因?yàn)榘踩O(shè)置惹的禍,以前就是因?yàn)檫@個一直沒解決2014-07-07使用百度云加速后網(wǎng)站打開速度慢、廣告不顯示的解決方法
這篇文章主要介紹了使用百度云加速后網(wǎng)站打開速度慢、廣告不顯示的解決方法,需要的朋友可以參考下2015-09-09