Я очищаю веб-сайт, который использует React для front-end. Пока мне кажется, что я должен использовать свою форму поиска, чтобы попасть на страницу результатов.Как React хранит и реагирует на изменение состояния точно?
Проблема заключается в том, что сайт удаляет выбранные параметры формы поиска из выпадающего списка (его state
) каждый раз, когда страница обновляется, и поэтому она значительно ускоряет соскабливание. Я знаю, что он работает так, как предполагалось, но если бы я мог напрямую манипулировать состоянием, тогда он мог бы ускорить мой скребок, а не перебирать все варианты с маленьких кнопок.
Я не думаю, что он использует любой тип постоянного хранения или локального хранения на всех, для каждого выбора, в противном случае форма, вероятно, не будет очищена от обновления.
Я вижу, что варианты лет для формы всегда присутствуют в атрибуте data-
(data-years=["2017", "2016", ...]
), но только на годы. И когда выбран год (или любой вариант из выпадающих списков), скрытое поле заполняется значением <input type="hidden" name="year" value="2017">
.
Это все, что React использует для временного хранения (ака. состояние) -крытые поля?
И для второй части моего вопроса, какое событие вызывается при изменении состояния? Как я могу запустить его вручную? Например, когда я выбираю год, я хочу, чтобы форма давала мне варианты для следующего раскрывающегося списка, указанного в году.
«Это все, что React использует для временного хранения (иначе говоря,« состояние »)? В Реактите нет никакого способа управлять состоянием. Однако использование скрытых полей для этой цели, если это так, происходит очень необычно. –
Я согласен, для React было необычно использовать скрытые поля. Но когда вы говорите: «Нет способа управлять государством в реактиве», вы имеете в виду, что разные версии React управляют состоянием иначе? Или что React управляет состоянием по-разному в зависимости от того, является ли это React prop или state set with [email protected] – geminae