riskallyGetParent-如果嵌套,则永远不要虚假

时间:2019-07-15 22:01:13

标签: react-navigation

在使用dangerouslyGetParent时,如果从嵌套导航器中使用它,我永远不会发现它是虚假的。我做了一个小小的代码潜水,如果它来自嵌套的导航器,就找不到它是虚假的。我错了吗?嵌套导航器是否有可能提供dangerouslyGetParent中的未定义/空值?

1 个答案:

答案 0 :(得分:2)

  

之所以会以危险方式调用该函数,是因为警告开发人员不要过度使用该函数。获取父级的父级以及其他难以遵循的模式。

来源:https://reactnavigation.org/docs/en/navigation-key.html#usage-with-reset-navigation-actionshtml-reset

对我来说,你还好。引起关注的原因只是确保您没有使用任何反模式或难以阅读的模式。

也:

  

确保始终检查该调用是否返回有效值。

来源:https://reactnavigation.org/docs/en/navigation-prop.html#dangerouslygetparent-get-parent-navigator

听起来你在做?

这里的历史背景:https://github.com/react-navigation/rfcs/issues/27#issuecomment-370913271

  

我们可能想为其命名而不是getParent(),以便不鼓励人们使用getParent().getParent()等,我们知道通过构建更大的应用程序,当屏幕和导航结构出现时,可能会导致令人沮丧的错误。随机播放