主頁 > 知識庫 > antd通過 filterDropdown 自定義按某天時間搜索功能

antd通過 filterDropdown 自定義按某天時間搜索功能

熱門標(biāo)簽:高德地圖標(biāo)注公司位置需要錢嗎 合肥阿里辦理400電話號 慶陽外呼系統(tǒng)定制開發(fā) 廊坊地圖標(biāo)注申請入口 地圖標(biāo)注資源分享注冊 海南人工外呼系統(tǒng)哪家好 怎么去掉地圖標(biāo)注文字 襄陽外呼增值業(yè)務(wù)線路解決方案 北京外呼系統(tǒng)咨詢電話

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: '報警時間', dataIndex: 'time', key: 'time',
   filterDropdown: ({ setSelectedKeys, selectedKeys, confirm, clearFilters }) => (
    div style={{ padding: 8 }}>
      DatePicker placeholder={`搜索時間`}
      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: '時長', 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 自定義按某天時間搜索功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • Antd中單個DatePicker限定時間輸入范圍操作
  • antd日期選擇器禁止選擇當(dāng)天之前的時間操作
  • antd-DatePicker組件獲取時間值,及相關(guān)設(shè)置方式
  • 解決antd datepicker 獲取時間默認(rèn)少8個小時的問題

標(biāo)簽:臺州 株洲 平頂山 綿陽 鎮(zhèn)江 鶴崗 哈密 商丘

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《antd通過 filterDropdown 自定義按某天時間搜索功能》,本文關(guān)鍵詞  antd,通過,filterDropdown,自定義,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《antd通過 filterDropdown 自定義按某天時間搜索功能》相關(guān)的同類信息!
  • 本頁收集關(guān)于antd通過 filterDropdown 自定義按某天時間搜索功能的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章