React项目使用React-Router
⒈初始化React项目(略)
请参考 初始化一个React项目(TypeScript环境)
⒉集成React-Router
在React世界里,公认最好用的路由是React-Router。那我们直接来集成它吧。
yarn add react-router history
#如果是type环境
yarn add react-router @types/react-router history @types/history
⒊配置React-Router
在src中新建一个文件叫Router.js(如果是type环境则名称为Router.tsx):
cd src
cd.>Router.js #如果是type环境 cd.>Router.tsx
代码如下:
import {createBrowserHistory} from 'history'; import React from 'react'; import {Route,Router} from 'react-router'; import App from './App'; import Edit from './Edit'; const history = createBrowserHistory() export default () => ( <Router history={history}> <> <Route exact path="/" component={App}/> </> </Router> )
然后修改index.js(type环境为index.tsx)文件,将读取的组件修改为Router:
import React from 'react'; import ReactDOM from 'react-dom'; import './index.css'; // import App from './App'; import * as serviceWorker from './serviceWorker'; import Router from './Router'; // ReactDOM.render(<App />, document.getElementById('root')); ReactDOM.render(<Router/>,document.getElementById('root')); // If you want your app to work offline and load faster, you can change // unregister() to register() below. Note this comes with some pitfalls. // Learn more about service workers: https://bit.ly/CRA-PWA serviceWorker.unregister();
刷新一下页面,运行正常
那我们再添加一个页面Edit.js(type环境为Edit.tsx),并为它配好路由:
Edit.js
import React from 'react'; export default () => ( <div>Edit</div> )
Router.js
import {createBrowserHistory} from 'history'; import React from 'react'; import {Route,Router} from 'react-router'; import App from './App'; import Edit from './Edit'; const history = createBrowserHistory() export default () => ( <Router history={history}> <> <Route exact path="/" component={App}/> <Route path="/edit" component={Edit}/> </> </Router> )
作者:奇
出处:https://www.cnblogs.com/fanqisoft/p/12022163.html
版权:本作品采用「本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。」许可协议进行许可。
分类:
TS/ES/JS/Node
如果文章内容对您有所帮助,欢迎赞赏.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!