当前位置: 首页 > news >正文

宣城市网站建设_网站建设公司_全栈开发者_seo优化

小学门户网站建设,网页qq官网,一个vps 几个wordpress,企业网站开发用什么v5 版本既兼容了类组件#xff08;react v16.8前#xff09;#xff0c;又兼容了函数组件#xff08;react v16.8及以后#xff0c;即hook#xff09;。v6 文档把路由组件默认接受的三个属性给移除了#xff0c;若仍然使用 this.props.history.push()#xff0c;此时pr…v5 版本既兼容了类组件react v16.8前又兼容了函数组件react v16.8及以后即hook。v6 文档把路由组件默认接受的三个属性给移除了若仍然使用 this.props.history.push()此时props会提示空值。官方文档给出的解决方案是使用 useNavigate() 这个hook但是 hook 只能存在于函数组件无法用在类组件中。使用类组件进行项目开发的建议react-router-dom使用v5及以前的版本。如果使用函数组件开发建议使用最新的v6版本。 文章目录 1.在类组件中的用法1.1 路由跳转1.2 路由返回1.3 携带参数1.3.1 state 属性携带参数1.3.2 search 属性携带参数1.3.3 路由传参 携带参数 2.在函数组件中的用法2.1 路由跳转2.2 路由返回2.3 携带参数2.3.1 state 属性携带参数2.3.2 search 属性携带参数2.3.3 路由传参 携带参数 3.总结3.1 3.1 router.js 路由文件中3.2 路由跳转、传参 1.在类组件中的用法 import React from react; import { Router, Route, Switch, Redirect, HashRouter } from react-router-dom; import { createHashHistory } from history; ...const route () (HashRouterSwitch{/* 重定向不可放在首行 */}{/* Redirect path* to/ / */}Route exact path/ component{Home} /Route exact path/listPage component{ListPage} /Route exact path/detailPage/:id component{DetailPage} /{/* 其他匹配重定向 */}Redirect path* to/ //Switch/HashRouter );export default route;注意 和 的区别 似乎没有区别 1.1 路由跳转 this.props.history.push(/listPage) 路由入栈 this.props.history.replace(/listPage)路由替换1.2 路由返回 this.props.history.goBack(): 返回上一级路由1.3 携带参数 1.3.1 state 属性携带参数 http://localhost:3000/#/listPage this.props.history.push({pathname: /listPage,state: {aaa: 123}, }); // 跳转后新页面 通过 this.props.history.location.state 获取 // http://localhost:3000/#/listPage1.3.2 search 属性携带参数 ·http://localhost:3000/#/listPage?bbb456 this.props.history.push({pathname: /listPage,search: ?bbb456, }); // 跳转后新页面 通过 this.props.history.location.search 获取 // url: http://localhost:3000/#/listPage?bbb4561.3.3 路由传参 携带参数 http://localhost:3000/#/detailPage/789 this.props.history.push({pathname: /detailPage / id, }); // 需要router.js 中路由配合 Route exact path/detailPage/:id component{DetailPage} / // 跳转后新页面 通过this.props.match.params.id 获取 // url: http://localhost:3000/#/detailPage/7892.在函数组件中的用法 import React from react; import { HashRouter, Route, Routes, Navigate } from react-router-dom; ...const route () (HashRouterRoutesRoute exact path/ element{Home /} /Route exact path/listPage element{ListPage /} /Route exact path/detailPage/:id element{DetailPage /} /Route exact path* element{Navigate to/ /} /{/* Route exact path* element{NotFound /} / */}/Routes/HashRouter );export default route;Routes 替换了 Switch。Route中 element 替换了 component/render 属性且值是组件而非组件名。Navigate 组件替换了 Redirect。 2.1 路由跳转 import { useNavigate } from react-router-dom;const navigate useNavigate();// pushnavigate(path);// replacenavigate(path, {replace: true});2.2 路由返回 const navigate useNavigate();// go backnavigate(-1);2.3 携带参数 2.3.1 state 属性携带参数 http://localhost:3000/#/listPage const navigate useNavigate();navigate(/listPage, {state: {aaa: 123,}})// url: http://localhost:3000/#/listPage2.3.2 search 属性携带参数 http://localhost:3000/#/listPage?bbb456 const navigate useNavigate();navigate(/listPage ?bbb456)// url: http://localhost:3000/#/listPage?bbb4562.3.3 路由传参 携带参数 http://localhost:3000/#/listPage/456 const navigate useNavigate();navigate(/detailPage / id) // 需要router.js 中路由配合 Route exact path/detailPage/:id element{DetailPage /} / // 跳转后新页面 通过 const { id } useParams(); 获取其中useParams 为 react-router-dom 内方法 // url: http://localhost:3000/#/detailPage/7893.总结 3.1 3.1 router.js 路由文件中 Switch 改用 Routescomponent/render 属性 改为 element Route exact path/listPage element{ListPage /} /Redirect 改用 Navigate Route exact path* element{Navigate to/ /} / 3.2 路由跳转、传参 history.push(path) 改为 navigate(path)history.replace(path) 改为 navigate(path, {replace: true})history.goBack() 改为 navigate(-1)v5 中的 hook 使用比较 -v5 使用 useHistory 的 history.push() -v6 使用 useNavigate 的 navigate()
http://www.lebaoying.cn/news/50713.html

相关文章:

  • 用red5做直播网站网站建设培训教程 新手入门到精通
  • 网站界面设计原则小程序运营主要做什么
  • 深圳建设工程协会网站长沙建立企业网站
  • 西安建站装修效果图素材网
  • 保护wordpress图片链接网站优化建设公司
  • 美了一站式变美共享平台免费网页注册
  • 专业做网站 郑州php旅游网站cms
  • 河北怀来县建设局网站哈尔滨城乡建设局网站首页
  • 临沂网站制中国经济排名世界第几
  • 户外产品销售公司网站建设免费网站统计
  • 网站如何添加浮动窗口网站开发时如何兼容
  • 申请个网站用vs2012做asp网站
  • 免费模板网站都有什么宁波市住房和城乡建设局网站首页
  • 成都建站模板wordpress样式切换功能
  • 衡阳网站页面设计公司山东网站建设和游戏开发的公司排名
  • 手机购物网站开发网站源码安装步骤
  • 高境网站建设上海网络公司网站建设
  • 怎么做公司网站需要什么渲模网
  • 学做网站在哪里乐清做网站建设公司哪家好
  • 阿里巴巴怎样做网站赣州网站建设哪家好
  • 十堰网站建设公司厦门的一个做设计的网站
  • 网站制作过程合理的步骤是( )百度一下你就知道网页
  • 临沂做网站的公司不同用户入口的网站样板
  • 吉林网站建设司北京宣传片制作公司
  • 南山做网站公司怀化网页
  • 网站栏目设置完整度建设昌吉市住房和城乡建设局网站
  • 网站上面的内容里面放照片怎么做的哪个app可以免费下载ppt模板
  • 广东省建设协会网站wordpress add_menu_page
  • 优惠券网站做淘客违规吗自己做网站需要收费吗
  • 官方网站建设必要性百度自动驾驶技术