本篇内容主要讲解“react前端路由和后端路由的区别有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“react前端路由和后端路由的区别有哪些”吧!
react前端路由和后端路由的区别:1、前端路由通过“react-router”中的Link标签来触发,后端路由通过ajax来触发;2、前端路由基于浏览器事件监听,而后端路由基于http通讯协议;3、前端路由可以实现局部渲染,而后端路由实现重新渲染整个页面。
本教程操作环境:Windows10系统、react17.0.1版、Dell G3电脑。
后端路由的机制
懂后端的同学都知道,后端路由是后端在app.js中注册后端路由函数,前端通过ajax触发相应的路由回调函数(以express为例)
触发: ajax
响应: app.get('/router',callback)
原理: 基于http通讯协议
//app.js app.get('/', (request, response) => { let ret = { "success": true, "code": 200, "message": "", "data": [], } response.send(ret) })
前端路由的机制
而前端路由(指react-router)是,前端在router.js中注册前端路由与组件映射,前端通过Link设置的路由或在浏览输入相应路由引起组件渲染:
触发: react-router中的Link标签
响应: 渲染Rout标签中对应组件
原理: 基于浏览器中hash(React-Router v2之前),history(React-Router v4)
//index.js class ListContent extends Component { constructor(props){ super(props); this.state = { } } render() { return ( <Row> <Button> + <Link to="/topic"> 发布话题 </Link> </Button> </Row> ); } } //router.js <Router> <div> <Header/> <Switch> <Route exact path="/" component={index} /> <Route exact path="/topic" component={topic} /> </Switch> </div> </Router>
在router.js中header组件会一直存在页面中, 而Switch标签中的组件只会在触发后渲染,可简单理解为未触发组件为null,不显示
所以形成了局部渲染
//若触发前端路由'/topic',则index组件不渲染 <Router> <div> <Header/> <Switch> <Route exact path="/" component={null} /> <Route exact path="/topic" component={topic} /> </Switch> </div> </Router>
前端路由和后端路由的区别
前端路由基于浏览器事件监听,不通过http通讯协议
前端路由局部渲染, 后端重新渲染整个页面,相对来说前端路由体验好点
到此,相信大家对“react前端路由和后端路由的区别有哪些”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。