当前位置: 首页 > 知识库问答 >
问题:

前端 - React的状态我理解是进行保存一个全局的(或组件局部的)一个变量数据值,但是为何使用`状态`这个词来描述呢?

何涵忍
2024-09-02

怎么理解React中的状态,

我们在组件内,经常使用useState Hook来进行状态的保存。
请问:
1、这个是否叫做组件内状态?
2、在此组件之外如何定义状态?是否是指的是比如Redux这些工具来进行项目内状态管理,来进行组件之间状态的传输?
3、这个功能的意思我理解是进行保存一个全局的(或组件局部的)一个变量数据值,但是为何使用状态这个词来描述呢?

共有2个答案

淳于飞文
2024-09-02

我理解的状态是用来描述内部的动态数据

  1. 是的,毫无疑问
  2. 组件之外和组件无关,只是能通过各种方式影响组件行为。如果是项目状态,那么没错
  3. 英文state,中文状态,不是研究语言的,感觉没什么问题,跟状态这个词的其它用法也是一致的
梁存
2024-09-02

现在的框架都是基于数据驱动的,组件状态就是用来保存组件内部数据的,而这些数据可以控制组件的渲染,也就是UI = F(state)

 类似资料:
  • 假设我有以下名为Home的组件: 在PostForm组件与新Post一起提交后,我将如何更新主状态,或者如何从api重新获取数据。

  • 本文向大家介绍描述下在react中无状态组件和有状态组件的区别是什么?相关面试题,主要包含被问及描述下在react中无状态组件和有状态组件的区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 1,无状态组件主要用来定义模板,接收来自父组件props传递过来的数据,使用{props.xxx}的表达式把props塞到模板里面。无状态组件应该保持模板的纯粹性,以便于组件复用。创建无状态组件如下: v

  • https://codesandbox.io/s/ww49ef?file=/TasksContext.js&utm_med... 模仿以上官网的示例:出现了 dispatch is not a function 报错?请问为何?

  • 如何为drools无状态会话设置全局变量。 假设两个线程访问同一个会话,但为每个线程设置一个全局变量customer arraylist和新的arraylist。对于全局变量customer,第二个线程的arraylist是否替换第一个线程的arraylist。 这似乎是Stateless知识库类留档的情况: 无状态KnowledgeSessions支持全局,其作用域有多种方式。我将首先介绍非命令

  • 首先让我说,“记录器”是指任何一类负责向用户或程序员报告诊断或进度信息的对象。根据这个定义,“记录器”将包括图形用户界面上的反馈,如进度条。 我们一再被告知要避免全局状态,尤其是全局可变状态(GMS)。因为伐木者天生是可变的,所以我最近试图让我的伐木者“不是全球性的”。我尝试了各种策略(比如通过构造函数向记录器注入引用)。我终于意识到,所有的方法都是把口红贴在猪身上。 日志记录器必须是所有类(或至

  • 我正在构建一个React web应用程序,该应用程序分为多个组件,可通过React选项卡访问: 每个选项卡都是其自己的组件/子系统,在访问该选项卡时新呈现。在每个选项卡中,我都使用一个JSON文件的数据。此数据加载到每个组件的状态,如下所示: 我现在正在更改其中一个组件中的状态,以触发使用新数据重新渲染: 到目前为止还不错,但是当我现在切换到另一个选项卡/组件在那里也发生了变化-为什么会发生这种情

  • 我刚刚从反应类过来,开始思考钩子和功能组件。我有一段加载地图脚本的代码 我需要从下面的函数中设置状态或更新状态,但它不是保持状态的主函数 下面的主要功能是加载中的映射脚本。 如何使用这种方式更新状态,即从另一个函数更新状态

  • 问题内容: 背景和详细信息 Swift进化建议SE-0094在Swift 3.0中实现,引入了全局功能: 后者声明如下 并在swift / stdlib / public / core / UnfoldSequence.swift中实现 。语言参考提供了以下使用它的示例(请注意,缺少显式类型注释) { iters in iters.0 = !iters.0 return iters.0 ? ite