выдается warning "React Hook useEffect has a missing dependency: 'query'."
                  
                  
                  
                  
                  
                  При попытке добавлении в dependency query, начинается небольшой dos сервера, что делать?
                  
                  
                  
                  
                  
                  const query = useQuery()
                  
                  
                  useEffect(() => {
                  
                  
                      fetch(`...{query.get('...')}`)
                  
                  
                          .then(value => value.json())
                  
                  
                          .then(json => setHouse(json))
                  
                  
                  }, [])
                  
                  
                
хук useQuery из react-query?
 Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  да
 Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  upd, нет, https://reactrouter.com/web/example/query-parameters import {useLocation} from "react-router-dom"; export function useQuery() { return new URLSearchParams(useLocation().search); }
Мне кажется в данном случае можно пренебречь советами реакта, если значение query не изменяется и не будет изменяться нету смысла добавлять его в список зависимостей
 Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  Игнорирование таких warning, считается нормальной практикой?
Нет, я бы посоветовал вынести ваш фетч в отдельную функцию, примерно так const fetchSomething = () => { .... } и useEffect будет такой useEffect(() => { fetchSomething() }, [fetchSomething])
Ну ещё наверное стоит использовать функцию фетча через useCallback для мемоизации
 Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  Данная конструкция не решает проблему, многократного вызова fetch const query = useQuery() const fetchSomething = useCallback(() => { fetch(`...{query.get('...')}`) .then(value => value.json()) .then(json => setHouse(json)) }, [query]) useEffect(() => { fetchSomething() }, [fetchSomething])
query одинаковый объект между рендерами ? Нет, судя по new
 Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Misha
                          Borisov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  спасибо, покопаю в данном направлении
Обсуждают сегодня