如何在useEffect
钩子的if块中调用redux操作:
useEffect(async () => {
if (nameId && selectedGroup === 'AGM') {
const subPeople = await getSubPeople(nameId);
}
}, [nameId, selectedGroup]);
我有两个选择框。如果此人在name
选择框中键入,我将name
的选定id存储在nameid
状态中。如果用户选择了一个组,我将它存储在selectedgroup
中,所以只有在两个条件都匹配的情况下,我才需要调用APIendpoint来获取subpeoples
。
如果我注释这段代码,就没有错误。如何使代码片段工作?
您可以将异步逻辑移动到一个单独的函数中,并在useEffect
中调用它,因为useEffect
的回调本身不能是异步的:
useEffect(() => {
const getPeople = async () => {
if (nameId && selectedGroup === 'AGM') {
const subPeople = await getSubPeople(nameId);
return subPeople; // Or set the state, etc.
}
}
getPeople();
}, [nameId, selectedGroup]);
我在我的react项目中使用apollo graphql,我得到的错误是 无效的钩子调用。钩子只能在函数组件的主体内部调用 这是我的代码 一旦我运行了这个程序,我就得到了错误,我知道useQuery本身就是一个钩子,我不能从内部useEffect调用它,但是接下来应该怎么解决这个问题,因为我需要首先从我的redux状态中获取insuranceId并将其发送到查询。 谢谢
我想使用React在表中显示一些记录,但我得到了这个错误: 无效的挂接调用。钩子只能在函数组件的主体内部调用。这可能是以下原因之一: 您可能有不匹配的React和渲染器版本(如React DOM) 你可能违反了钩子规则 在同一个应用程序中可能有多个React副本,请参阅有关如何调试和修复此问题的提示。
我尝试了示例,如下所示:
我开始学钩子了。但是我不明白异步调用是如何工作的。早些时候我被使用 然后调用我的,但是我应该用useDispat()做什么?如果我只是调用 然后我的< code > foo() don t < code > console . log(2) 我正在使用thunk
我想在useEffect钩子中使用异步post-get请求。这是一种优化策略吗?
问题内容: 假设我希望能够在程序中任何地方每次引发异常时都能够记录到文件。我不想修改任何现有代码。 当然,可以将其概括为每次引发异常时都可以插入钩子。 以下代码是否被认为可以安全地执行此操作? 问题答案: 如果要记录 未捕获的 异常,只需使用sys.excepthook即可。 我不确定是否会记录 所有 引发的异常的价值,因为很多库会在内部为可能不关心的事情引发/捕获异常。