withRouter、Link、Route等的页面跳转有疑问
1、这里导入withRouter实现点击退出返回到首页,老师说因为Login不在Route项里所以使用这种方法?
可是我看Header组件和Login组件也是不在Route那部分里面啊,它们里面的许多东西不也使用Link实现了跳转的吗?
这里是Link不能实现所以使用withRouter,还是老师只是为了多讲一种页面跳转的方法呢?
2、Link标签是不是把要实现跳转功能的组件包裹起来,然后在Link组件的to属性中设置要跳转到的路径,再把它所在的组件放在src目录的index.js文件中的BrowserRouter里面就可以实现跳转功能了?
3、Route标签设置的是,在地址栏里输入路径跳转到相应的组件;而Link标签设置的是点击里面的内容跳转带相应的组件?我这个理解的对吗?(不知道应该说跳转到组件还是页面,它们有啥区别,这里应该用哪种描述方式呢?)
正在回答
同学你好,关于你的问题,回答如下:
1、是在BrowserRouter中。但是不在Route这个项里(Route项就是上面圈的三个),没有路由的信息。所以引入了withRouter,来获取路由的信息。
而withRouter中提供的方法,我们可以直接跳转路径,不需要再使用到link。
这里是老师多提供了一种方法,还是可以直接使用link的。
2、是的,不过注意是要放到BrowserRouter里面中的路由项中。
3、是的。这里Route就是上面说的路由项。都可以的。一个页面可以叫做一个组件,不过组件的范围更广,一个单独提前的功能也能叫一个组件。
如果我的回答帮助了你,欢迎采纳,祝学习愉快~
- 参与学习 人
- 提交作业 239 份
- 解答问题 10739 个
本阶段带你深入前端开发的肌理,通过ES6基础知识和前端主流高级框架的学习,助你快速构建企业级移动webAPP应用,进入职场的终极battle
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星