Хорошо, я протестировал ваш вариант использования, но он не вызывает блок useEffect.
Вот код, который я протестировал.
import React, { useEffect, useState } from "react";
const Comp = () => {
const [count, setCount] = useState(0);
const filter = "a";
useEffect(() => {
console.log("executing effect");
//loadFriends();
}, [filter]);
return (
<div>
Div
<button onClick={() => setCount(count + 1)}> Click me</button>
Count: {count}
</div>
);
};
export default Comp;
Ссылка на codesandbox Даже при изменении счетчика компонент повторно визуализируется, но не вызывает блок useEffect.
Скорее всего, в loadFriends()
происходит что-то, что изменяет значение фильтра.
Подробнее об использовании влияют здесь