Skip to content
This repository was archived by the owner on Feb 5, 2024. It is now read-only.

Commit 748c60f

Browse files
committed
Handle on no results
1 parent cf46b8a commit 748c60f

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

resource/js/components/Header/SearchBox.js

+11-2
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,23 @@ export default class SearchBox extends React.Component {
2424
const keyword = data.keyword;
2525
if (keyword === '') {
2626
this.setState({
27+
searchingKeyword: '',
2728
searchedPages: [],
2829
});
2930

3031
return true;
3132
}
3233

34+
this.setState({
35+
searchingKeyword: keyword,
36+
});
37+
3338
axios.get('/_api/search', {params: {q: keyword}})
3439
.then((res) => {
3540
if (res.data.ok) {
3641
this.setState({
37-
searchedPages: res.data.data
42+
searchingKeyword: keyword,
43+
searchedPages: res.data.data,
3844
});
3945
}
4046
// TODO error
@@ -48,7 +54,10 @@ export default class SearchBox extends React.Component {
4854
return (
4955
<div className="search-box">
5056
<SearchForm onSearchFormChanged={this.search} />
51-
<SearchSuggest searchedPages={this.state.searchedPages} />
57+
<SearchSuggest
58+
searchingKeyword={this.state.searchingKeyword}
59+
searchedPages={this.state.searchedPages}
60+
/>
5261
</div>
5362
);
5463
}

resource/js/components/Header/SearchSuggest.js

+9
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,13 @@ export default class SearchSuggest extends React.Component {
66

77
render() {
88
if (this.props.searchedPages.length < 1) {
9+
if (this.props.searchingKeyword !== '') {
10+
return (
11+
<div className="search-suggest" id="search-suggest">
12+
No results for "{this.props.searchingKeyword}".
13+
</div>
14+
);
15+
}
916
return <div></div>;
1017
}
1118

@@ -20,8 +27,10 @@ export default class SearchSuggest extends React.Component {
2027

2128
SearchSuggest.propTypes = {
2229
searchedPages: React.PropTypes.array.isRequired,
30+
searchingKeyword: React.PropTypes.string.isRequired,
2331
};
2432

2533
SearchSuggest.defaultProps = {
2634
searchedPages: [],
35+
searchingKeyword: '',
2736
};

0 commit comments

Comments
 (0)