问题标签 [react-state]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
282 浏览

javascript - 如何根据其他状态更改更新一个状态项?

我正在使用反应上下文来管理某些元素的显示/隐藏,因为这些元素取决于多个服务器调用的返回数据。根据其他状态更改更新上下文状态的正确方法是什么?

这是我尝试过的,但它没有工作,因为它变成了一个无限循环。所有prevState项目都包含null或来自服务器的返回数据。

0 投票
2 回答
37 浏览

javascript - 如何将数据以及子组件发送到组件 - JavaScript - 反应

上面的代码是有效的,我用 Scroll 组件包装 MessageList 组件,问题和答案将被 MessageList 组件作为道具接收。好的!

现在,如果我还想向 Scroll 组件发送数据,例如:

请注意,我正在尝试将 endTime 传递给 Scroll 组件,但它不起作用。如何解决这个问题?

0 投票
3 回答
10690 浏览

javascript - 在 React 中单击按钮时获取文本框值的最佳方法是什么?

通常在 HTML 中你会做这样的事情:

我相信这不是 React 的做法。

像我在我的应用程序中所做的那样的另一种方法并不是我认为的最佳方法。像这样:

在其他 stackoverflow 主题中,我看到了这样的示例:

但在这一点上我也有我的问题,

我不知道如何使用多个文本输入正确执行此操作:

  1. 您可以制作多个效率低下的特定变更处理程序,

  2. 您可以使用开关制作变更处理程序以设置属性

对输入字段进行句柄更改是否有效?因为我只想要单击按钮时的输入字段值..

这就是我所说的形式。

创建客户表格

那么如何在单击按钮时使用 React 正确获取多个输入数据?

提前感谢您的帮助!

0 投票
0 回答
508 浏览

reactjs - 反应动态搜索/过滤器返回未定义

我正在尝试创建一个可以按标题或日期排序的动态搜索。现在我的代码专注于标题,一旦我开始工作,我将复制它以使日期也工作。但是,现在,我的过滤方法不起作用,我不知道如何在不破坏地图功能的情况下修复它。

我目前收到"Cannot read property 'toLowerCase' of undefined"。它指的是newsItem.title,但我不确定如何修复它。

0 投票
2 回答
2171 浏览

reactjs - ReactJS 与 Tabs 一起使用时无法更新状态

我有一个带有 3 个选项卡的反应组件,每个选项卡都包含一个数据表,该数据表将根据活动选项卡填充 API 调用结果。所以每次都会有一个参数,我通过 API 调用传递并相应地显示数据。

这很好用,当我切换选项卡时,我正在获取数据,但是当我尝试从数据表中搜索然后单击另一个选项卡时,我收到错误为-

无法对未安装的组件执行 React 状态更新。这是一个空操作,但它表明您的应用程序中存在内存泄漏。要修复,请取消 componentWillUnmount 方法中的所有订阅和异步任务。

下面是我的示例代码:

组件.jsx

我尝试使用 componentWillUnmount 进行更新,但没有解决。

我在 index.html 中初始化数据表。

那么可能的解决方案是什么。

0 投票
1 回答
6795 浏览

reactjs - 在表单提交后使用 ant design 在 react 中设置表单文本字段值

提交后我需要更改表单文本字段的值。我使用https://ant.design/components/form/ ant design 创建表单。

我在表单 onSubmit 方法中尝试了以下代码。

这里的 count 是 getFieldDecorator 的 id。但是当我检查如下时,计数字段值不会更改为 pasId 变量的值。

console.log(values.count);

那么在表单值提交到数据库后我可能会出错的地方以及如何设置表单字段值?

0 投票
0 回答
32 浏览

reactjs - 将表单状态保持在应用程序状态的 React 表单验证问题

我的注册表单中有recatpcha。该组件具有以下状态:

在提交表单之前,我会验证所有详细信息并检查是否recaptcha已使用if(recaptcha).
但是任何技术人员都可以去 React 开发工具并标记recaptcha为 true,然后提交表单。他们只是通过了recaptcha验证。此外,对于其他状态(例如isAuthenticated),他们可以从开发工具更改状态。

这个需要怎么处理?

0 投票
1 回答
34 浏览

reactjs - ReactJS 组件状态没有按预期改变

我创建了一个Container类和一个InnerElement类。Container包裹InnerElements 的地方。有必要InnerElement在给定时间只显示一个。

当我更改为另一个InnerElement. 有趣的是,当我创建console.log它时,它会显示更改的元素,但不会呈现。有人可以给我一个提示,提前谢谢!

Container班级:

这里的InnerElement类:

这里是我ContainerInnerElement电话:

我还发现,当我在InnerElement this.props.name而不是状态下使用时,它可以工作。

0 投票
4 回答
1740 浏览

reactjs - 当状态数组中的任何值被修改时,ReactJS 组件状态不会更新

在我的 React 组件中,我希望我的状态自动更新而无需重新加载页面。我正在使用 lodash.iseqaual 方法来比较状态变化,但这不会更新状态。

下面是我的组件:

lodash.isequalincomponentDidUpdate()方法没有更新我的状态。

我还在componentDidUpdate中尝试了以下逻辑:

但这会进入无限循环,即使在没有变化之后也会增加 API 调用。

我怎样才能做到这一点?

提前致谢!

**需要等待这个问题的解决方案。

更新:

从所有答案中,我想我应该用示例来解释。因此,当我进行 API 调用并更新状态activeData时,它更新为:

例如,如果我将名称字段从更新为ABC返回ABCD的结果将是:

然后组件中的名称值应自动从 ABC 更新为 ABCD,无需重新加载页面。

这不会发生在任何一个shouldComponentUpdate或通过按照建议更改我的 lodash 语法的情况下。

目录结构:

另外我会告诉我的组件是如何呈现的:

详细信息.jsx

主页.js

应用程序.js

0 投票
1 回答
1420 浏览

javascript - 如何动态获取状态数组名称 React

如何在 state 中动态设置数组的名称,以从 state 中获取它。

我知道如何动态设置和获取状态键,但是当我尝试做

[path]: this.state.[path].concat([value])

我收到以下错误:

错误图像

任何帮助将不胜感激,谢谢