在使用dangerouslyGetParent
时,如果从嵌套导航器中使用它,我永远不会发现它是虚假的。我做了一个小小的代码潜水,如果它来自嵌套的导航器,就找不到它是虚假的。我错了吗?嵌套导航器是否有可能提供dangerouslyGetParent
中的未定义/空值?
答案 0 :(得分:2)
之所以会以危险方式调用该函数,是因为警告开发人员不要过度使用该函数。获取父级的父级以及其他难以遵循的模式。
对我来说,你还好。引起关注的原因只是确保您没有使用任何反模式或难以阅读的模式。
也:
确保始终检查该调用是否返回有效值。
来源: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()
等,我们知道通过构建更大的应用程序,当屏幕和导航结构出现时,可能会导致令人沮丧的错误。随机播放