Javascript 如何修复在ReactSwing Api中被忽略的setState钩子?

Javascript 如何修复在ReactSwing Api中被忽略的setState钩子?,javascript,reactjs,use-state,react-functional-component,Javascript,Reactjs,Use State,React Functional Component,我正在使用名为ReactSwing()的库在react应用程序中设置一个类似tinder的滑动功能,我一直在使用功能组件示例。Api正在运行,swipe函数看起来很棒,但是从卡片组中添加和删除卡片很困难,因为我无法访问stacks函数。该示例说明了我使用的设置状态,如下所示 const [stack, setStack] = useState(null); //logging cards thrown const cardThrown = (targetCard) =&

我正在使用名为ReactSwing()的库在react应用程序中设置一个类似tinder的滑动功能,我一直在使用功能组件示例。Api正在运行,swipe函数看起来很棒,但是从卡片组中添加和删除卡片很困难,因为我无法访问stacks函数。该示例说明了我使用的设置状态,如下所示

 const [stack, setStack] = useState(null);

      //logging cards thrown
     const cardThrown = (targetCard) => {
       //logs stack
        console.log(stack);
      };

        <ReactSwing
                  className="stack"
                  setStack={(stack) => setStack(stack)}
                  throwout={cardThrown}
                >
我还设置了一个沙盒()来帮助进一步解决这个问题,提前谢谢

更新:使用chrome中的react组件工具,我可以看到状态实际上已经更新了,但我无法使用API文档中建议的方法访问它,也无法使用控制台日志访问它,我也无法找出原因

更新2:使用

useEffect(() => {
        console.log(stack)
      }, [stack]);

向我显示它已更新usestate,但刷卡时的常规控制台日志仍然为空?

您可能应该调用某些更改函数上的setstack,该函数可能在ReactSwing中可用,库提供的所有更改函数都是刷卡事件,必须在刷卡事件之前定义堆栈以触发某些事件,如销毁卡。根据文档,这是正确的方法setStack是一个ReactSwing函数,正如您在我上传的图像中看到的,它确实更新了状态,我无法访问它。
useEffect(() => {
        console.log(stack)
      }, [stack]);