fix: issue with a repeated search query

This commit is contained in:
alipov_d
2023-06-19 16:39:17 +02:00
parent 2dd093b803
commit 6ee2d4b07e

View File

@@ -1,4 +1,4 @@
import React, { useContext, useEffect } from 'react';
import React, { useContext, useEffect, useState } from 'react';
import camelCase from 'lodash/camelCase';
import { useDispatch, useSelector } from 'react-redux';
@@ -14,6 +14,7 @@ import postsMessages from '../discussions/posts/post-actions-bar/messages';
import { setFilter as setTopicFilter } from '../discussions/topics/data/slices';
function Search({ intl }) {
const [previousSearchValue, setPreviousSearchValue] = useState('');
const dispatch = useDispatch();
const { page } = useContext(DiscussionContext);
const postSearch = useSelector(({ threads }) => threads.filters.search);
@@ -35,6 +36,7 @@ function Search({ intl }) {
dispatch(setSearchQuery(''));
dispatch(setTopicFilter(''));
dispatch(setUsernameSearch(''));
setPreviousSearchValue('');
};
const onChange = (query) => {
@@ -42,7 +44,7 @@ function Search({ intl }) {
};
const onSubmit = (query) => {
if (query === '') {
if (query === '' || query === previousSearchValue) {
return;
}
if (isPostSearch) {
@@ -52,6 +54,7 @@ function Search({ intl }) {
} else if (page === 'learners') {
dispatch(setUsernameSearch(query));
}
setPreviousSearchValue(query);
};
useEffect(() => onClear(), [page]);