Skip to content

Commit fc54a48

Browse files
committed
chore: enhance demo example
1 parent d30f776 commit fc54a48

File tree

1 file changed

+14
-10
lines changed

1 file changed

+14
-10
lines changed

example/src/App.js

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,11 @@ import _ from 'lodash';
55
import useCancelToken from 'react-use-cancel-token';
66

77
const App = () => {
8-
const [search, setSearch] = React.useState('');
98
const [searching, setSearching] = React.useState(false);
109
const [result, setResult] = React.useState('No results.');
1110
const { newCancelToken, cancelPreviousRequest, isCancel } = useCancelToken();
1211

13-
const performSearch = async (keywords = search) => {
12+
const performSearch = async (keywords) => {
1413
cancelPreviousRequest();
1514
setSearching(true);
1615

@@ -34,14 +33,10 @@ const App = () => {
3433
setSearching(false);
3534
};
3635

37-
const delayedSearch = React.useCallback(
38-
_.debounce((value) => performSearch(value), 700),
39-
[performSearch]
40-
);
36+
const delayedSearch = React.useCallback(_.debounce(performSearch, 400), [performSearch]);
4137

42-
const handleInputChange = (event) => {
38+
const handleChange = (event) => {
4339
const { value } = event.target;
44-
setSearch(value);
4540
delayedSearch(value);
4641
};
4742

@@ -50,9 +45,16 @@ const App = () => {
5045
setSearching(false);
5146
};
5247

48+
const handleKeyDown = (event) => {
49+
const { value } = event.target;
50+
if (event.key === 'Enter') {
51+
performSearch(value);
52+
}
53+
};
54+
5355
return (
5456
<>
55-
<input type="text" placeholder="Search..." value={search} onChange={handleInputChange} />
57+
<input type="text" placeholder="Search..." onChange={handleChange} onKeyDown={handleKeyDown} />
5658
<button onClick={handleCancel} disabled={!searching}>
5759
Cancel
5860
</button>
@@ -66,7 +68,9 @@ const App = () => {
6668
<ul>
6769
{result.map((item, index) => (
6870
<li key={index}>
69-
<a href={item.html_url} target="_blank" rel="noopener noreferrer">{item.name}</a>
71+
<a href={item.html_url} target="_blank" rel="noopener noreferrer">
72+
{item.name}
73+
</a>
7074
</li>
7175
))}
7276
</ul>

0 commit comments

Comments
 (0)