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

网站导航栏 字体龙岗大运做网站的公司

网站导航栏 字体,龙岗大运做网站的公司,邯郸企业做网站报价,舟山市住房与城乡建设厅网站什么是前端路由? 一个路径path对应一个component当我们在浏览器中访问一个path的时候,path对应的组件会在页面中进行渲染 简介 | React Router 中文文档 创建路由开发环境 使用路由我们还是采用CRA创建项目的方式进行基础环境配置 安装router npm i…

什么是前端路由?

一个路径path对应一个component当我们在浏览器中访问一个path的时候,path对应的组件会在页面中进行渲染

简介 | React Router 中文文档 

创建路由开发环境

使用路由我们还是采用CRA创建项目的方式进行基础环境配置

安装router
npm i react-router-dom
router配置

 新建router文件 
import Login from '../page/Login/index'
import Home from '../page/Home/index'import { createBrowserRouter } from 'react-router-dom'
const router = createBrowserRouter([{path:'/login',element:<Login></Login>},{path:'/Home',element:<Home></Home>}
])
export default router
在项目根目录index.js进行引入使用
import React from 'react'
import { createRoot } from 'react-dom/client'import App from './App'
//引入store
import store from './store/index'
import { Provider } from 'react-redux'
//引入router
import router from './router/index'
import { RouterProvider } from 'react-router-dom' const root = createRoot(document.getElementById('root'))
root.render(<RouterProvider router={router}><Provider store={store}><App /></Provider></RouterProvider>
)
路由导航
什么是路由导航?   页面跳转

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

声明式导航

import { Link } from 'react-router-dom'
const Login = ()=>{return (<div>我是登录页   <Link to="/home">跳转home页</Link></div>)
}
export default Login
编程式导航

import { Link ,useNavigate} from 'react-router-dom'const Home = () => {const navatigate = useNavigate() //声明return(<div>我是home页<button onClick={()=>navatigate('/login')}>点击跳转到Login页</button></div>)
};
export default Home;
 导航传参

 第一种    拼接
传递参数 
import { Link } from 'react-router-dom'
const Login = ()=>{return (<div>我是登录页   //声明式导航传参<Link to="/home?name=我是首页&id=1">跳转home页</Link>//编程式导航传参<button onClick={()=>navatigate('/login?name=我是首页&id=1')}>点击跳转到Login页</button></div>)
}
export default Login
接收参数   使用useSearchParams
import { useSearchParams} from 'react-router-dom'const Home = () => {const [params] = useSearchParams()let id = params.get('id')console.log(params.get('id'),params.get('name'),id);return(<div>我是home页</div>)
};
export default Home;
第二种    params传参

 注意:使用params传参需要去router进行占位

传递参数
import { Link,useNavigate } from "react-router-dom";
const Login = () => {const navatigate = useNavigate()return (<div>我是登录页<Link to="/home/我是首页/1">跳转home页1</Link><button onClick={()=>navatigate('/home/我是登录页/1')}>点击跳转</button></div>);
};
export default Login;
接受参数
import { useParams} from 'react-router-dom'const Home = () => {const params1 = useParams()console.log(params1.id,params.name);return(<div>我是home页</div>)
};
export default Home;
这样是接收不到的,需要去路由进行占位
import Login from '../page/Login/index'
import Home from '../page/Home/index'import { createBrowserRouter } from 'react-router-dom'
const router = createBrowserRouter([{path:'/login',element:<Login></Login>},{path:'/home/:name/:id',element:<Home></Home>}
])
export default router

占位后即可拿到

http://www.dtcms.com/wzjs/595735.html

相关文章:

  • 济南做网站比较好的门户网站 管理系统
  • 外国网站上做雅思考试网站开发神书
  • 后端开发网站做一些什么wordpress首页文件代码在
  • 设计比较好的电商网站WordPress的mx主题
  • 安徽同济建设集团网站wordpress数据库用户名密码忘记
  • 网站 备案信息网站优化过度被k
  • 沈阳网站建设服务器网站建设财务分析
  • 在线做qq空间的网站网站定制电话
  • ASP做旅游网站代码西充建设局网站
  • 网站建设策划书模板大学交作业wordpress
  • 中国建设银行企业网站网站建设公司岗位
  • php网站开发经理招聘阿里云网站域名申请
  • 关于做膳食的一些网站广州专门做网站的公司有哪些
  • 视频封面制作网站计算机速成班培训
  • 网站改版方案原则网站建设网络推广方案ppt
  • 五金配件网站建设报价宣传海报怎么制作
  • 网站错误页面模板驻马店网站开发公司电话
  • win7 asp网站发布域名注册好怎么建设网站
  • 网站管理cms网站沙盒期
  • 做孝道的网站的目的彩票网站定制
  • 公司域名查询官方网站企业小程序制作开发
  • 网站在建设时不容忽略的一些细节河南确诊病例最新消息
  • Wordpress做什么网站赚钱中科院网站做的好的院所
  • 视频上传网站建设基础做网站
  • 做任务领游戏的网站门户网站建设关系到
  • 上海品牌建站少女长尾关键词挖掘
  • 广西代理网站建设公司网站的维护和推广
  • 网站建设在哪里找客户有文化底蕴的公众号名字
  • 南宁致峰网站建设网站开发工作描述
  • 口碑好网站建设电话哪个网站建设服务器是在国外的