我正在刮一个使用React作为前端的网站。到目前为止,我似乎必须使用他们的搜索表单才能到达结果页面。React如何存储和响应改变状态?
问题在于,每次页面刷新时,网站都会从下拉菜单(其state
)中清除搜索表单的所选选项,因此它会使搜索速度显着变慢。我知道它是按照预期工作的,但是如果有办法我可以直接操纵状态,那么它可以加速我的刮板,而不是从小按钮上重新选择所有的选择。
我不认为它使用任何类型的持久存储或本地存储可言,每一个选择,否则可能形式不会对刷新清除。
我可以看到,表单的年份选项始终存在于data-
属性(data-years=["2017", "2016", ...]
)中,但仅限于多年。当一年(或下拉菜单中的任何选项)被选中时,隐藏字段将填充一个值,例如<input type="hidden" name="year" value="2017">
。
这就是React用于临时存储(又名状态) - 隐藏字段?
对于问题的第二部分,当状态发生变化时会触发什么类型的事件?我怎么能手动触发它?例如,当我选择一年时,我希望表单能够给出下一个下拉列表的选项 - 给定年份。
“这就是React用于临时存储(aka。state) - 隐藏字段的所有内容吗?”没有一种方法可以在React中管理状态。但是,为此目的使用隐藏字段,如果确实如此,这是非常不寻常的。 –
我同意,React使用隐藏字段看起来很不寻常。但是当你说“在React中没有一种方法可以管理状态”时,你的意思是不同版本的React管理状态有所不同吗?或者React根据它是一个React道具还是用setState设置的状态来不同地管理状态?@Jordan – geminae