我有一个useEffect
,可以从数据库中获取用户,并且我想更改前端的视图而不必重新加载页面,例如在删除用户,过滤,搜索等时。 react-redux
在此项目中进行跟踪状态从未如此简单。
我当前的useEffect
看起来像这样。
// render users with each search query and filters
useEffect(() => {
const fetchUsers = () => {
fetchAllUsers();
};
fetchUsers();
}, [fetchAllUsers, userId, role, searchValue, sortByNameState, sortByJoinDate]);
我将简要介绍依赖项数组。 userId
跟踪用户删除请求,role
跟踪根据角色过滤用户,searchValue
顾名思义跟踪搜索结果并更新用户列表,依此类推。向前。
但是,随着应用程序开始增长,跟踪每个请求可能会很麻烦,并且我正在考虑使用一个单独的状态,例如hasChanged
状态来代替。
所以我的useEffect
现在应该看起来像这样。
// render users with each search query and filters
useEffect(() => {
const fetchUsers = () => {
fetchAllUsers();
};
fetchUsers();
}, [fetchAllUsers, hasChanged]);
如果有人对我的利弊有所启发,那就太好了,第二种方法比第一种更好吗?