Skip to content

Commit 7bff950

Browse files
committed
Convert lastExecutedSearchResults to reference hook
1 parent e05f887 commit 7bff950

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

src/components/GenerativeDirectAnswer.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { useCardAnalytics } from '../hooks/useCardAnalytics';
1111
import { DefaultRawDataType } from '../models/index';
1212
import { executeGenerativeDirectAnswer } from '../utils/search-operations';
1313
import { Markdown, MarkdownCssClasses } from './Markdown';
14-
import React, { useMemo, useState } from 'react';
14+
import React, {useMemo, useRef} from 'react';
1515

1616
/**
1717
* The CSS class interface used for {@link GenerativeDirectAnswer}.
@@ -92,19 +92,18 @@ export function GenerativeDirectAnswer({
9292
}
9393
}, [isUniversal, universalResults, verticalResults]);
9494

95-
const [lastExecutedSearchResults, setLastExecutedSearchResults] =
96-
useState(undefined as Result[] | undefined);
95+
const lastExecutedSearchResults = useRef(undefined as Result[] | undefined);
9796
const searchActions = useSearchActions();
9897
const gdaResponse = useSearchState(state => state.generativeDirectAnswer?.response);
9998
const isLoading = useSearchState(state => state.generativeDirectAnswer?.isLoading);
10099
const handleClickEvent = useReportClickEvent();
101100

102101
React.useEffect(() => {
103-
if (!searchResults?.length || !searchId || searchResults === lastExecutedSearchResults) {
102+
if (!searchResults?.length || !searchId || searchResults === lastExecutedSearchResults.current) {
104103
return;
105104
}
106105
executeGenerativeDirectAnswer(searchActions);
107-
setLastExecutedSearchResults(searchResults);
106+
lastExecutedSearchResults.current = searchResults;
108107
}, [searchResults, searchId]);
109108

110109
if (!searchResults?.length || isLoading || !gdaResponse || gdaResponse.resultStatus !== 'SUCCESS') {

0 commit comments

Comments
 (0)