diff --git a/superset-frontend/src/datasource/ChangeDatasourceModal.tsx b/superset-frontend/src/datasource/ChangeDatasourceModal.tsx index 8e0bad30c..682e83c65 100644 --- a/superset-frontend/src/datasource/ChangeDatasourceModal.tsx +++ b/superset-frontend/src/datasource/ChangeDatasourceModal.tsx @@ -118,20 +118,24 @@ const ChangeDatasourceModal: FunctionComponent = ({ setConfirmedDataset(datasource); }, []); - useDebouncedEffect(() => { - if (filter) { - fetchData({ - ...emptyRequest, - filters: [ - { - id: 'table_name', - operator: 'ct', - value: filter, - }, - ], - }); - } - }, 1000); + useDebouncedEffect( + () => { + if (filter) { + fetchData({ + ...emptyRequest, + filters: [ + { + id: 'table_name', + operator: 'ct', + value: filter, + }, + ], + }); + } + }, + 1000, + [filter], + ); useEffect(() => { const onEnterModal = async () => { diff --git a/superset-frontend/src/explore/exploreUtils.js b/superset-frontend/src/explore/exploreUtils.js index 68c5a6fd2..4304f93d6 100644 --- a/superset-frontend/src/explore/exploreUtils.js +++ b/superset-frontend/src/explore/exploreUtils.js @@ -288,8 +288,9 @@ export const exploreChart = formData => { postForm(url, formData); }; -export const useDebouncedEffect = (effect, delay) => { - const callback = useCallback(effect, [effect]); +export const useDebouncedEffect = (effect, delay, deps) => { + // eslint-disable-next-line react-hooks/exhaustive-deps + const callback = useCallback(effect, deps); useEffect(() => { const handler = setTimeout(() => {