React js Router 路由 2, (把写过的几个 app 组合起来)

embedded/2024/11/15 0:46:54/

完整的项目,我已经上传了,资源链接.

起因, 目的:

每次都是新建一个 react 项目,有点繁琐。
刚刚学了路由,不如写一个 大一点的 app ,把前面写过的几个 app, 都包含进去。

这部分感觉就像是, django 里面的 createapps,
一个项目, 包含多个独立的app。

过程, 先看效果图:

在这里插入图片描述

代码 1 , 当前 app 的路由设置
import { Route, Routes, Link } from "react-router-dom";
import Home from "./pages/Home.jsx";
import About from "./pages/About.jsx";
import Books from "./pages/Books.jsx";
import NewBook from "./pages/NewBook.jsx";import TodoApp from "./todoApps/TodoApp.jsx";
import NasaApp from "./nasaApps/NasaApp.jsx";
import FormApp from "./formApps/FormApp.jsx";function App() {return (<>{/* 使用 Link 替代 href */}{/* 这里的名称一定要对应!!! */}{/* 为什么下面这2个不能用? */}{/* 因为最下面的 Routes 中没有添加!  */}<nav className="navbar navbar-dark bg-primary" data-bs-theme="dark"><ul className="nav"><li className="nav-item"><a className="nav-link active" aria-current="page" href="/">Home</a>{/* <Link to="/">Home</Link> */}</li><li className="nav-item"><a className="nav-link" href="/about">About</a></li><li className="nav-item"><a className="nav-link" href="/books">Books</a></li><li className="nav-item"><Link to="/newBook"><a className="nav-link" href="#">NewBook</a></Link></li></ul></nav>{/* <nav><ul><li><Link to="/">Home</Link></li><li><Link to="/books">Books</Link></li><li><Link to="/newBook">NewBook</Link></li><li><Link to="/about">About</Link></li></ul></nav> */}{/* 这里的路径 path="/books",  */}{/* 与上面的 Link 中 to=xxx 对应 */}<Routes><Route path="/" element={<Home />} /><Route path="/books" element={<Books />} /><Route path="/about" element={<About />} /><Route path="/newBook" element={<NewBook />} />{/* 带 id 的路由 , :id 是一个占位符, */}{/* 访问: http://localhost:5173/books/321 */}<Route path="/books/:id" element={<Books />} />{/* 访问其他几个 app  */}<Route path="/todo" element={<TodoApp />} /><Route path="/nasa" element={<NasaApp />} /><Route path="/form" element={<FormApp />} /></Routes></>);
}export default App;

其他几个页面的效果图

todo app

在这里插入图片描述

nasa

在这里插入图片描述

表单 form

在这里插入图片描述

结论 + todo

其实问题还是很多的。

  1. react 自带的标签, <Link>, 如何给这个标签添加 boostrap css 样式
  2. 多个app 组合,复杂度增加,如何排除错误。进一步学习 chrome devtools 使用技巧。

老哥,支持一下啊。

zfb


http://www.ppmy.cn/embedded/113247.html

相关文章

nvidia-docker Failed to initialize NVML: Unknown Error

nvidia镜像拉下来了&#xff0c;但是运行不了。 执行以下命令 sudo docker run --rm --runtimenvidia --gpus all ubuntu nvidia-smi报错 Failed to initialize NVML: Unknown Error参考 https://stackoverflow.com/questions/72932940/failed-to-initialize-nvml-unknown-er…

source ~/.bash_profile有什么用

source ~/.bash_profile 是在 Unix/Linux 系统上用来重新加载用户的 Bash 配置文件 ~/.bash_profile 的命令。这条命令的作用是使得当前的 Bash 环境重新读取并应用 ~/.bash_profile 中的设置和变量定义。 作用&#xff1a; 1. 更新环境变量&#xff1a; ~/.bash_profile 是用户…

序列化和反序列化

目录 1.应用层协议 应用层协议是什么&#xff1f; 2.序列化和反序列化 3.流式数据的处理 存在的问题 如何制定协议报头呢&#xff1f; 4.Jsoncpp的介绍和使用 Jsoncpp的介绍 Jsoncpp的使用 1.应用层协议 应用层协议是什么&#xff1f; 当我们使用通信软件发送信息时…

大数据新视界 --大数据大厂之数据驱动决策:如何利用大数据提升企业竞争力

&#x1f496;&#x1f496;&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎你们来到 青云交的博客&#xff01;能与你们在此邂逅&#xff0c;我满心欢喜&#xff0c;深感无比荣幸。在这个瞬息万变的时代&#xff0c;我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…

qt操作excel(QAxObject详细介绍)

一.QAxObject 概念介绍 QAxObject 是 Qt 框架中的一个类&#xff0c;专门用于与 ActiveX 控件和 COM&#xff08;组件对象模型&#xff09;对象进行交互。它为开发者提供了一种方便的方式来使用 Windows 平台上的 COM 组件&#xff0c;使得在 Qt 应用程序中调用这些组件的功能…

等保测评:企业如何选择合适的测评机构

企业选择等保测评机构的考量因素 企业在选择信息安全等级保护&#xff08;等保&#xff09;测评机构时&#xff0c;应考虑以下几个关键因素&#xff1a; 资质认证&#xff1a;确保测评机构具有国家相关部门颁发的等保测评资质认证&#xff0c;这是机构专业性和合法性的体现。 …

人工智能物联网的去中心化和分布式学习:全面综述、新兴挑战和机遇

这篇论文的标题是《Decentralized and Distributed Learning for AIoT: A Comprehensive Review, Emerging Challenges, and Opportunities》&#xff0c;作者是Hanyue Xu, Kah Phooi Seng, Li Minn Ang, 和 Jeremy Smith。论文发表在IEEE Access期刊上&#xff0c;接收日期为2…

如何彻底清除电脑上的数据?保护你的隐私安全

随着科技的飞速发展&#xff0c;电脑已经成为我们日常生活和工作中不可或缺的工具。然而&#xff0c;当我们需要更换电脑、出售旧电脑或处理废旧电脑时&#xff0c;如何彻底清除电脑上的数据成为了一个重要的问题。本文将详细介绍几种彻底清除电脑数据的方法&#xff0c;以确保…