javascript - 如何在 session 期间在页面上存储数组

标签 javascript reactjs

我是个新手,想问一个高级问题。欢迎任何方向性建议。

所以,这就是我在 vanilla JS 中所做的。我首先定义了一个空变量,并将数据库查询的结果放在那里。然后创建按钮,我执行过滤操作以仅填充满足过滤条件的项目。因此,为了说明这一点,它看起来像这样:

 const things = [
    {continent: Asia, country: Korea},
    {continent: Europe, country: France},
    {continent: Africa, country: Egypt},
    .....
 ];
 const filter (continent) = > {
     //Logic to filter based on continent criteria and return the countries
 };

这在普通 JS 中是可能的,因为我可以在脚本文档中保留数组变量,并且函数可以轻松引用它。

问题是:我如何在 React 中做类似的事情?即,存储只要页面处于事件状态就持续存在的变量的等效方法是什么,以便我可以对它们进行过滤操作?显然,在页面渲染后,在组件外部留出一个变量是行不通的。我应该在哪里解决这个问题?

如有任何建议,我们将不胜感激。谢谢!

最佳答案

为此,您可以执行以下三件事之一

  1. 在children和children之间传递一个在顶层定义的数组 parent (可以处理简单的页面)
  2. 使用 React Context API https://reactjs.org/docs/context.html
  3. 研究像 Redux 这样的状态管理库(如果您的应用程序很复杂,则最推荐)- https://redux.js.org/introduction/getting-started/

关于javascript - 如何在 session 期间在页面上存储数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60635978/

相关文章:

javascript - 通量分页

javascript - 将 selectize.js 添加到patternlab.io 实现中

javascript - 如何在 JavaScript 中将 console.log 内容作为字符串获取

javascript - 从 JS "string"更新值属性

javascript - setState 在函数调用中未更新

reactjs - 为什么 date-fns isAfter 和 isBefore 都是 false?

javascript - 管理大型表单 - ReactJS

javascript - 为什么 JavaScript 提交重新加载页面并通过按钮提交进行客户端页面验证

javascript - Handlebars 和 Javascript

javascript - 单一职责原则 React 重构