ReactNative useEffect父子数据刷新

时间:2020-08-29 16:51:35

标签: reactjs react-native react-hooks

useEffect导致我在获取数据以及能够使用最新数据重新加载弹出窗口时出现一些问题,

  1. ScreenA提取数据并将数据加载到SamplePopup中-确定
  2. SamplePopup能够获取并呈现此数据-确定
  3. 在SamplePopup上,您按一个按钮以触发刷新回到ScreenA-确定
  4. ScreenA获取新数据(确定),但现在SamplePopup无法获取此新数据-失败

关于如何从其父级ScreenA获取SamplePopup最新数据的任何想法?

ERROR: FOR UPDATE cannot be applied to the nullable side of an outer join
org.hibernate.exception.GenericJDBCException: could not execute query
    at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:140)
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:128)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
    at org.hibernate.loader.Loader.doList(Loader.java:2545)
    at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2276)
    at org.hibernate.loader.Loader.list(Loader.java:2271)
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:459)
    at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:365)
    at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196)
    at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1268)
    at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)

1 个答案:

答案 0 :(得分:0)

我在这里添加建议,因为它有点长并且包含代码

数据正在更新,只是您尝试在其中登录日志的日期

useEffect(() => {
    console.log('data refresh')
    console.log(props.data)
  }, []);

此useEffect的回调仅在第一次渲染后运行一次。 尝试打印useEffect之外的值。您将获得更新的数据。

谢谢。让我知道它是否解决了您的问题。