主页 > 软件开发  > 

笔记二十、使用路由Params进行传递参数

笔记二十、使用路由Params进行传递参数
20.1、在父组件中设置路由参数

<NavLink to={`classify/${this.state.name}`} className={this.activeStyle}>classify</NavLink>

父组件 Home/index.jsx

import React from "react"; import {NavLink, Outlet} from "react-router-dom"; class App extends React.Component { // 类组件中不能用const定义变量 // 选中高亮 activeStyle = ({isActive}) => { return isActive ? 'background' : ""; }; state = {name: 'lcq-lcq'}; render() { return ( <div> 首页的页面 <div style={{display: "flex", justifyContent: 'center', marginTop: '20px'}}> <NavLink to={`classify/${this.state.name}`} className={this.activeStyle}>classify</NavLink> <NavLink to='navigation' className={this.activeStyle}>navigation</NavLink> </div> <div style={{background: 'red'}}> {/*<!-- Renders the child route's element, if there is one. -->*/} <Outlet/> </div> </div>); } } export default App; 20.2 在路由表中设置路由参数

path: 'classify/:param',

import {Navigate} from "react-router-dom"; import Home from "../components/Home"; import About from "../components/About"; import Classify from "../components/Home/components/Classify.jsx"; import Navigation from "../components/Home/components/Navigation.jsx"; export default [ { path: '/home', element: <Home/>, children: [ { path: 'classify/:param', element:<Classify /> }, { path: 'navigation', element:<Navigation /> }, ] }, { path: '/about', element: <About/>, }, { path: '/', element: <Navigate to='about'/>, } ] 20.3 在子组件中获取路由参数 import React from 'react'; import {useParams} from "react-router-dom"; const Classify = () => { const params = useParams(); console.log(params); return ( <div> 分类的页面 <div> 父组件home传递的参数:{params.param} </div> </div> ); } export default Classify;

标签:

笔记二十、使用路由Params进行传递参数由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“笔记二十、使用路由Params进行传递参数