React Router 如何处理 onEnter 背后的逻辑是什么?
What's the logic behind how React Router processes onEnter?
>react-router
有一些关于如何处理onEnter
/onLeave
的文档,但我不明白为什么向上遍历树不会导致onEnter被触发?
例如,如果您有以下路由:
-
/
-
/profile
-
/profile/:username
从/
导航到/profile
再到/profile/boogers
,onEnter 将被触发 3 次。但是,如果您从/profile
或/profile/boogers
导航到/
,则不会触发吗?我希望输入新路径总是触发onEnter事件,因为您要转到新的url路径?
谢谢你的时间!
也与这个问题有关。
路由被视为分层路由。当您第一次导航到/profile 时,onEnter
将在/profile 和/上触发。然后,当您从/profile 导航到/时,不会触发任何onEnter
,因为认为您已经在该父路由内。
所以,我认为这是技术上的答案,但我也认为这是愚蠢的,恕我直言。它确实给你留下了一些严重的缺陷,OP已经在react-router上的链接github问题中指出了这一点。
相关的事实是,如果您从/users/a 导航到/users/b,则根本没有钩子。您实施componentWillReceiveProps
并检查userId
是否已更改的唯一选择。关注点分离不良。更多信息: https://github.com/reactjs/react-router/issues/2547
相关文章:
- “var self = this”方法背后的原理是什么?
- React Router 如何处理 onEnter 背后的逻辑是什么?
- 让函数中的接收器默认为全局对象背后的基本原理是什么?
- AJAX 跨域安全背后的基本原理是什么?
- Facebook评论API - Facebook所说的“评论框背后”是什么意思
- Lightstreamer背后的魔力是什么
- d3背后的逻辑是什么.js nice()刻度
- JavaScript:“shift”方法背后的逻辑是什么?
- Math.max方法背后的逻辑是什么
- 与compareFunction一起使用的排序方法背后的逻辑是什么
- 用continuation生成Javascript代码背后的诀窍是什么
- 窗口背后的原因和窗口的顶部属性是什么
- 名称空间背后的概念是什么
- 堆栈溢出背后的算法是什么? ajax标记搜索字段
- 网站上的3D图像非常酷,但这背后的技术是什么?
- 使用Object.assign创建对象背后的思想是什么?
- canPlayType背后的原理是什么?
- javascript中var a = (expression1, expression2)背后的原因是什么?
- 错误处理-当JavaScript抛出ReferenceError时,其背后的逻辑是什么
- 选择一个完整的基于CSS的菜单和基于Javascript/CSS的菜单背后的基本原理是什么?