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

东莞企业网站建设方案信用中国 网站截图怎么做

东莞企业网站建设方案,信用中国 网站截图怎么做,黑群晖按照wordpress,移动应用开发专业月薪React-Router 示例React-Router抽象路由模块步骤: 路由导航声明式导航编程式导航 路由导航传参searchParams传参params传参 嵌套路由配置默认二级路由404路由配置两种路由模式如何选择 示例 这里我创建两个页面,分别是主页和登录页分别使用编程式导航和…

React-Router

  • 示例
  • React-Router
    • 抽象路由模块
      • 步骤:
    • 路由导航
      • 声明式导航
      • 编程式导航
    • 路由导航传参
      • searchParams传参
      • params传参
    • 嵌套路由配置
    • 默认二级路由
    • 404路由配置
    • 两种路由模式
      • 如何选择

示例

  • 这里我创建两个页面,分别是主页和登录页
  • 分别使用编程式导航和声明式导航进行页面跳转
  • 登录按钮:编程式导航
  • 主页标签:声明式导航
    在这里插入图片描述

React-Router

  1. 导入createBrowserRouter和RouterProvider
  2. 创建Router实例对象并且配置路由对应关系
  3. 路由绑定
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
import { createBrowserRouter,RouterProvider } from 'react-router-dom';//配置路由
const router = createBrowserRouter([{path:'/login',element:<div>我是登录页</div>},{path:'/index',element:<div>我是主页</div>}
])const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<React.StrictMode>//路由绑定<RouterProvider router={router}></RouterProvider></React.StrictMode>
);

抽象路由模块

  • 对页面和路由进行封装抽离

步骤:

  1. 准备一个page文件夹存放页面内容,并进行导出
const Index = ()=>{return <div>我是主页</div>
}export default Indexconst Login = ()=>{return <div>我是登录页</div>
}export default Login
  1. 准备一个router文件夹创建路由实例配置路由,并导出
import { createBrowserRouter,RouterProvider } from "react-router-dom";
import Login from "../page/login";
import Index from "../page/index";//配置路由
const router = createBrowserRouter([{path:'/login',element:<Login />},{path:'/index',element:<Index />}
])export default router
  1. 在主文件中引入并绑定
import { RouterProvider } from 'react-router-dom';
//导入路由
import router from './router';const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<React.StrictMode><RouterProvider router={router}></RouterProvider></React.StrictMode>
);

路由导航

  • 路由系统中的多个路由之间需要进行路由跳转,并且在跳转的同时有可能需要传递参数进行通信

声明式导航

  • 通过在模版中通过<Link />组件描述出要跳转到哪里去,比如后台管理系统的左侧菜单
    <Link to="/index">主页</Link>

注意:浏览器在渲染时会将其解析为<a>标签

编程式导航

  • 通过useNavigate钩子得到导航方法,然后通过调用方法以命令式的形式进行路由跳转,例如登录完成后自动跳转到主页
import { useNavigate } from "react-router-dom"
const Login = ()=>{const navigate = useNavigate()return <div><p>我是登录页</p><button onClick={()=>navigate('/index')}>登录</button></div>
}export default Login

路由导航传参

searchParams传参

  1. 在起始页面通过拼接字符串的方式传递参数
import { useNavigate } from "react-router-dom"
const Login = ()=>{const navigate = useNavigate()return <div><p>我是登录页</p><button onClick={()=>navigate('/index?id=1&name=miraculous')}>searchParams传参</button></div>
}export default Login
  1. 在目标页面使用useSearchParams接收参数
import { useSearchParams } from "react-router-dom"const Index = ()=>{//在目标页面接收参数const [params] =  useSearchParams()console.log(params);const id = params.get('id')const name = params.get('name')return <div>我是主页 {id} {name}</div>
}export default Index

params传参

  • 在目标页面使用useParams接收参数
  • 注意:params传参需要在router中加入占位符
    path:'/index/:id'
  • 示例:
<button onClick={()=>navigate('/index/1')}>params传参</button>//在目标页面接收参数
const params = useParams()
const id = params.id
return <div>我是主页 {id}</div>

嵌套路由配置

  • 在一级路由中又内嵌了其他路由,这种关系叫做嵌套路由
  • 实现步骤:
    • 使用children属性配置路由嵌套关系
    • 使用<Outlet />组件配置二级路由渲染位置

默认二级路由

  • 当访问的是一级路由时,默认的二级路由组件可以得到渲染,只需要在二级路由的位置去掉path,设置index属性为true

404路由配置

  • 当浏览器输入url的路径在整个路由配置中都找不到对应的path,为了用户体验,可以使用404兜底组件渲染
  • 步骤:
    • 准备一个NotFound组件
    • 在路由表数组的末尾,以*号作为路由path配置路由

两种路由模式

  • 各种主流框架的路由常用的路由模式有两种,history模式和hash模式,ReactRouter分别由createBrowerRouter和createHashRouter函数负责创建

如何选择

  • 简单应用或需要快速开发:选择 Hash 模式,因为它无需服务器配置,开发起来更加简单。
  • 复杂应用或注重用户体验和 SEO:选择 History 模式,但需要确保服务器配置正确,以避免刷新页面时出现 404 错误。

文章转载自:

http://lXaZdgUo.pcgmw.cn
http://scK2J0FL.pcgmw.cn
http://lk7nXNNM.pcgmw.cn
http://ZSHlK0uP.pcgmw.cn
http://rKzTDZSY.pcgmw.cn
http://HXZPEY94.pcgmw.cn
http://ZKGslPUb.pcgmw.cn
http://P49KbZRT.pcgmw.cn
http://OtHFSMgB.pcgmw.cn
http://6kOnW8qS.pcgmw.cn
http://P2bcdOio.pcgmw.cn
http://pFOX8F9Q.pcgmw.cn
http://z4rz3lRs.pcgmw.cn
http://QOLPPUZK.pcgmw.cn
http://KEZgAunD.pcgmw.cn
http://74KLeaEe.pcgmw.cn
http://VfVeBVsf.pcgmw.cn
http://ezrp6CNu.pcgmw.cn
http://XbCVILil.pcgmw.cn
http://OhNW5c7T.pcgmw.cn
http://QQWh86RT.pcgmw.cn
http://YjOQsfP4.pcgmw.cn
http://77Gs88fS.pcgmw.cn
http://xzrtBa5v.pcgmw.cn
http://whUduEqZ.pcgmw.cn
http://znu1ui4h.pcgmw.cn
http://RSEcVapt.pcgmw.cn
http://gQZO8vDN.pcgmw.cn
http://gdgGUcbZ.pcgmw.cn
http://8EAo0Lig.pcgmw.cn
http://www.dtcms.com/wzjs/644004.html

相关文章:

  • 保险公司官方网站济南网站seo
  • 菏泽网站建设菏泽为wordpress添加虚拟用户权限
  • 深圳华南城网站建设南京响应式网站制作
  • 做游戏类型的网站的好处建筑网站免费
  • 网站建设好找工作温州市永嘉上塘建设局网站
  • 人才招聘网站模板生活信息网站如何推广
  • 重庆哪里可以做网站的湖南自考网站建设与管理
  • 实训网站建设的心得总结动漫制作专业需要学什么
  • 网站建设搭配html5网站是用什么软件做的吗
  • 网站构建的一般流程是什么网站开发实例教程实训心得
  • 课程网站建设的基本原理做网站备案需要什么
  • 网站入口设计wordpress 菜单无法保存
  • 怎么建设网站法库综合网站建设方案
  • 做悬赏的网站建设信用卡积分商城网站
  • 网站建设与管理技术发展网站内容编辑器
  • 怎么做游戏测评视频网站广东微信网站制作报价表
  • 外贸网站推广方案百度域名是什么意思
  • 学校网站建设招聘买卖链接网
  • 网站大数据怎么做怎样在手机做自己的网站
  • 仿站吧摄影工作室logo设计
  • 昆明淘宝网站建设怎么做好网站开发 设计
  • 做教育app的网站有哪些软件开发专业词汇
  • 网站建设pc指什么南京seo排名外包
  • 风景网站模板做网站公司大连
  • seo引擎搜索网站网站开发合同范本 doc
  • 越秀区建设局网站南昌新手网站建设费用
  • 东莞常平中学google seo教程
  • 林州风景网站建设的目的商城网站建设需求分析
  • asp.net+网站开发+实战网站建设中制作页面导航
  • 怎么给自己的网站做seo东莞网站建设东莞