Вопросы с тегом «react-hooks»

Хуки - это новая функция, которая позволяет разработчикам использовать состояние (я) и другие функции React без написания класса.

226
Метод useState не сразу отражает изменение

Я пытаюсь выучить хуки, и этот useStateметод меня запутал. Я присваиваю начальное значение состоянию в виде массива. У useStateменя метод set не работает даже с spread(...)или without spread operator. Я создал API на другом ПК, который я вызываю и получаю данные, которые я хочу установить в...

210
Как вызвать функцию загрузки с React useEffect только один раз

UseEffect Реагировать крючок будет работать переданный в функции при каждом изменении. Это можно оптимизировать, чтобы он вызывался только при изменении желаемых свойств. Что делать, если я хочу вызвать функцию инициализации из componentDidMountи не вызывать ее снова при изменениях? Допустим, я...

182
Как исправить предупреждение об отсутствующей зависимости при использовании useEffect React Hook?

В React 16.8.6 (это было хорошо в предыдущей версии 16.8.3) я получаю эту ошибку, когда пытаюсь предотвратить бесконечный цикл при запросе выборки. ./src/components/BusinessesList.js Line 51: React Hook useEffect has a missing dependency: 'fetchBusinesses'. Either include it or remove the...

176
Как использовать componentWillMount () в React Hooks?

В официальных документах React упоминается - Если вы знакомы с методами жизненного цикла класса React, вы можете думать о useEffect Hook как о компонентах componentDidMount, componentDidUpdate и componentWillUnmount вместе. Мой вопрос - как мы можем использовать componentWillMount()метод жизненного...

151
Как сравнить oldValues ​​и newValues ​​в React Hooks useEffect?

Допустим, у меня есть 3 входа: скорость, sendAmount и receiveAmount. Я поставил эти 3 входа на использование различных параметров. Правила таковы: Если sendAmount изменился, я рассчитываю receiveAmount = sendAmount * rate Если полученная сумма изменилась, я рассчитываю sendAmount = receiveAmount /...

149
React Hook «useState» вызывается в функции «app», которая не является ни компонентом функции React, ни пользовательской функцией React Hook.

Я пытаюсь использовать перехватчики для решения простой проблемы const [personState,setPersonState] = useState({ DefinedObject }); со следующими зависимостями. "dependencies": { "react": "^16.8.6", "react-dom": "^16.8.6", "react-scripts": "3.0.0" } но я все еще получаю следующую ошибку:...

142
Предупреждения React Hook для асинхронной функции в useEffect: функция useEffect должна возвращать функцию очистки или ничего

Я пробовал useEffectпример ниже: useEffect(async () => { try { const response = await fetch(`https://www.reddit.com/r/${subreddit}.json`); const json = await response.json(); setPosts(json.data.children.map(it => it.data)); } catch (e) { console.error(e); } }, []); и я получаю это...

134
Что такое useState () в React?

В настоящее время я изучаю концепцию хуков в React и пытаюсь понять приведенный ниже пример. import { useState } from 'react'; function Example() { // Declare a new state variable, which we'll call "count" const [count, setCount] = useState(0); return ( <div> <p>You clicked {count}...

105
Бесконечный цикл в использовании

Я играл с новой системой хуков в React 16.7-alpha и застревал в бесконечном цикле в useEffect, когда состояние, которое я обрабатываю, является объектом или массивом. Сначала я использую useState и инициирую его с помощью пустого объекта, например этого: const [obj, setObj] = useState({}); Затем в...

102
В чем разница между useRef и createRef?

Я просматривал документацию по хукам, когда наткнулся на нее useRef. Глядя на их пример… function TextInputWithFocusButton() { const inputEl = useRef(null); const onButtonClick = () => { // `current` points to the mounted text input element inputEl.current.focus(); }; return ( <>...

100
React Hooks useState () с объектом

Каков правильный способ обновления состояния вложенного объекта в React with Hooks? export Example = () => { const [exampleState, setExampleState] = useState( {masterField: { fieldOne: "a", fieldTwo: { fieldTwoOne: "b" fieldTwoTwo: "c" } } }) Как бы один использовать setExampleStateдля...

95
Сделайте так, чтобы перехватчик React useEffect не запускался при первоначальном рендеринге

Согласно документам: componentDidUpdate()вызывается сразу после обновления. Этот метод не вызывается для первоначального рендеринга. Мы можем использовать новый useEffect()хук для моделирования componentDidUpdate(), но похоже, что useEffect()он запускается после каждого рендеринга, даже в первый...

95
React.useState не перезагружает состояние из реквизита

Я ожидаю, что состояние перезагрузится при изменении реквизита, но это не работает, и userпеременная не обновляется при следующем useStateвызове, что не так? function Avatar(props) { const [user, setUser] = React.useState({...props.user}); return user.avatar ? (<img src={user.avatar}/>) :...

89
Набор типов в useState React Hook с TypeScript

Я переношу проект React с TypeScript для использования функций перехватчиков (React v16.7.0-alpha), но я не могу понять, как установить типизацию деструктурированных элементов. Вот пример: interface IUser { name: string; } ... const [user, setUser] = useState({name: 'Jon'}); Я хочу, чтобы...

33
Почему React Hook useState использует const, а не let

Стандартный способ использования React useState Hook заключается в следующем: const [count, setCount] = useState(0); Однако эта const countпеременная явно будет переназначена на другое примитивное значение. Почему тогда переменная не определена как let...

31
установщик ловушки useState неправильно перезаписывает состояние

Вот проблема: я пытаюсь вызвать 2 функции одним нажатием кнопки. Обе функции обновляют состояние (я использую хук useState). Первая функция корректно обновляет значение 1 до «нового 1», но через 1 с (setTimeout) запускается вторая функция, и она меняет значение 2 до «нового 2», НО! Он устанавливает...

27
Firebase слушатель с React Hooks

Я пытаюсь понять, как использовать прослушиватель Firebase, чтобы данные облачного хранилища обновлялись с помощью обновлений активных перехватчиков. Первоначально я сделал это, используя компонент класса с функцией componentDidMount, чтобы получить данные о пожарном депо. this.props.firebase.db...