问题标签 [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.
javascript - Change state/prop in video react-native-video component
Im new to react and are experimenting a bit with react-native-video. Im trying to change a prop in the react-native-video library by clicking on a touchable element. But Im getting the errormessage:
undefined is not an object (evaluating 'this.state.setState')
Im sure this is an easy problem. I basically just want to find out how to initiate, call and change the state of the props when I am touching the defined Touchable area. In this example I want to change the rate from 0.1 to 1.
Here is my code:
reactjs - getDerivedStateFromProps 中的状态更新是否与渲染同步?
由于在每次getDervivedStateFromProps
渲染之前调用,我假设状态保证在渲染之前同步更新(即它不会像正常调用那样与其他调用进行批处理?)setState
setState
换句话说,发生的任何更新getDerivedStateFromProps
都保证反映在以下render
?
arrays - 将这组对象设置为数组时出现问题
因此,我有一个名为 !HandleDetail 的函数,一旦单击该函数就会获取该项目并加载详细信息屏幕。当它重新加载时,无论我点击什么对象,它都只显示一个对象。因此,如果我单击 iPhone 并重新加载浏览器,它会重新加载显示的唯一项目(T 恤)对象。我确信这与状态有关,因为我使用状态修复了类似这样的其他错误。我在想我必须映射创建的数组来收集信息并设置它的状态。这是一个视频,显示了我的意思:https://tyriquedaniel14-gmail.tinytake.com/tt/MzYwMDcwN18xMDg4NTEzMQ
。为了清楚起见,我试图让详细状态显示具有相同 ID 的相应项目。
我试图把它变成所有产品的数组。我尝试添加 map 方法并将 detailProduct 设置为产品。
reactjs - React 组件的本地状态未使用 onChildClick 更新
单击元素时,我正在尝试更新反应组件的本地状态
渲染外部的辅助函数在哪里onChildClickCallback
,如下所示:
我已经在回调中编写了上面的 console.log,因为我读过某处状态可能不会立即更新。
但是,无论我传递给状态的值是什么,它都没有得到更新,并且控制台正在记录键和项的相同旧值。我在这里想念什么?
更新代码:
你已经有 onChildClickCallback 了。我想在触发 onChildClickCallback 时更新状态并重新渲染组件。
reactjs - 为什么这个反应子组件属性值未定义?
我正在学习 ReactJS,我正在尝试使用反应组件创建一个简单的测验。我有三个组件:
FinalDiv——父组件
- 问题:显示问题
- 答案:显示该问题的选项
两者都是FinalDiv的子组件
为了计算正确和错误的答案并转到下一个问题,我正在使用方法处理器。
我的问题是我无法从Answer组件中获取所选选项的值。选项的值存储在Answer的capvalue属性中。
到目前为止,我已经尝试 event.target.value 在处理器方法中访问该值。但是在控制台中打印时它给出了未定义的。
我也试过this.capvalue。但同样的结果。
请注意,在渲染之前打印时它会给出正确的值,但是在处理器方法中打印时会给出未定义的值,因此我无法检查所选答案是否正确。请参阅代码中的 2 条注释:
我的猜测是处理器方法无法访问父组件(FinalDiv)中的Answer组件属性。所以需要在子组件本身(答案组件)中做一些事情,但我不知道是什么。我是否以某种方式将状态传递给子组件或其他东西?
如果您知道其他信息或问题格式是否错误,请告诉我。
我最近不受阻碍地提问。
javascript - 如何将异步状态传递给子组件道具?
我是新手,我正在尝试从 API 获取数据并将数据传递给子组件。我已将数据传递给父组件的状态,但是,当我将其作为道具传递给子组件时,它会记录为空数组。我确定我忽略了一些简单的东西,但我不知道是什么,我的代码如下
父组件
子组件
reactjs - 在 redux 存储中的状态更改和相应的反应状态更改之间进行交互的正确方法
我有一个反应应用程序,它使用 redux 状态管理工具以及本地本机状态管理,即反应(组件/容器)状态。假设有一个表单组件,其数据存储在反应状态。API 调用是通过 sagas 进行和处理的,它会相应地更新 Redux Store。如何更改反应状态,例如将表单状态键更改为loading: false
或通常在 saga 从 API 调用接收数据后如何使用数据更新表单(受控表单或不受控)。对于受控表单,将有一个容器组件来管理该表单的道具,但又如何更新容器的状态呢?我不想将数据存储在 redux 和 react 状态,特别是如果该数据用于本地存储,而不是 redux 存储
如果我使用该getDerivedStateFromProps
方法,我将需要将该数据存储在例如 reduxState 中,以便最终复制或计算并放入反应状态。我现在正在使用下面描述的方法,但我想知道你们还有什么可以建议的。
https://github.com/redux-saga/redux-saga/issues/907
我正在使用的示例代码如下,类似于链接中描述的代码
validateDispatch 调度一个动作,redux saga 拦截,执行 Api 调用并返回某些数据以在 Promise 解决后更新反应状态。当然这是妥协
reactjs - 更新父状态时更新子选项列表
我基于所选课程的选项(域)列表在父状态下更新,但孩子不会更新/继承随它发送的道具。子节点需要从父节点接收域状态并从中组成一个选项列表。它适用于初始化,但在父组件中当然更改后不会更新。
添加问题.js
MainQuestion.js
子问题.js
预期结果将是子组件根据课程更改域。这些变量已更改为父 AddQuestion,但不会作为子项中的道具出现。
reactjs - React - 状态挂钩映射不是函数
我知道有类似的问题,但我不知道为什么会发生错误。Div 显示,但随后应用程序崩溃(好像是一些长度问题)
代码类似于我找到的示例,比如这个沙箱
我究竟做错了什么?
这是组件:
这是 api 服务:
错误:
reactjs - 打字稿通用状态更改函数类型转换错误
我正在创建一个通用函数来更改状态。
错误信息:
这是通用更改功能的示例:
./UserSignUp.tsx
在此示例中,更改事件应该只允许更新url: string;
andname: string;
和 not errors: []
。
我应该定义'url'和'name'类型并以某种方式在更改函数中重用它们吗?
*在 Typescript 文档中,它声明可以使用可索引类型。但是,这样做我将失去类型检查。副作用是我可能还设置了“错误”状态,这通常不应该通过更改功能实现。
更新:根据这个Stackoverflow Question中的答案,以下解决方案是可能的:
拆分界面:
并通过以下方式重新使用该接口:
或者: