作者热门文章
- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章antd通过 filterDropdown 自定义按某天时间搜索功能由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
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"
/>
)
}
}
|
总结 。
以上所述是小编给大家介绍的antd通过 filterDropdown 自定义按某天时间搜索功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我网站的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢! 。
原文链接:https://www.cnblogs.com/takenotes-MUZI/p/11337926.html 。
最后此篇关于antd通过 filterDropdown 自定义按某天时间搜索功能的文章就讲到这里了,如果你想了解更多关于antd通过 filterDropdown 自定义按某天时间搜索功能的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我是一名优秀的程序员,十分优秀!