zhitern/ntu-scse22-0163-web (github.com)

和初始创建的是一样的
和初始创建的是一样的

as HTMLElement,这是 TypeScript 语法,用于明确 document.getElementById('root') 返回的值的类型

左为初始创建的,右为这个程序的,可以看到多了一些依赖的包
【注:HTML里面的那些注释需要删去】
- import React from 'react';
- //导入 React 库,它是构建组件所必需的
- import {
- BrowserRouter,
- Routes,
- Route,
- } from "react-router-dom";
- //导入 react-router-dom 库的几个关键组件。
- //BrowserRouter 是路由的容器,而 Routes 和 Route 用于定义路由规则。
- import logo from './image/logo.png'
- //导入 logo 图像,以便在组件中使用。【和App.js一样】
-
- import MainPage from "./pages/MainPage"
- import DeepRegionRepresentationPage from './pages/DeepRegionRepresentationPage';
- import RegionSearchPage from './pages/RegionSearchPage';
- import TempoTestPage from './pages/TempoTestPage';
- import TopicExplorePage from './pages/TopicExplorePage';
- //导入几个页面组件,它们分别代表应用中的不同视图或页面。
-
- import Navbar from './Components/Navbar';
- //导入 Navbar 组件,用于显示导航链接。
-
-
- import 'bootstrap/dist/css/bootstrap.min.css';
- //导入 Bootstrap 的 CSS 文件。Bootstrap 是一个流行的前端框架,它提供了多种样式和组件。
-
- function App() {
- return <BrowserRouter>
- {/*返回 JSX 元素。这里使用 BrowserRouter 包裹整个应用,它提供了一个路由的上下文。*/}
- <div className="Top" style={{maxHeight:'20vh'}}>
- <img src={logo} className = "logo" alt="logo" />
- <Navbar/>
- div>
- {/* 定义一个带有类名 Top 的 div,它包含了应用的 logo 和 Navbar 组件。
- 这部分内容总是在页面的顶部显示 */}
-
-
- <Routes>
- <Route path="/" element={<MainPage />} />
- <Route path="/TempoTestPage" element={<TempoTestPage />} />
- <Route path="/DeepRegionRepresentationPage" element={<DeepRegionRepresentationPage />} />
- <Route path="/RegionSearchPage" element={<RegionSearchPage />} />
- <Route path="/TopicExplorePage" element={<TopicExplorePage />} />
- Routes>
- {/*
- 使用 Routes 和 Route 组件定义路由规则。
- 每个 Route 定义了一个路径(path 属性)和一个关联的组件(element 属性)。
- 当访问一个路径时,关联的组件会被渲染
- */}
- BrowserRouter>
- }
-
- export default App;
- //导出 App 组件作为默认导出,以便在其他文件中导入。

具体看一下Banner
所以这一部分的效果是:


flex: '1' 意味着该 div 元素将占据可用空间的 1 份。flex: '2' 意味着 img 元素将占据可用空间的 2 份。flex: '3' 意味着 p 元素将占据可用空间的 3 份。效果如下:






这里为什么响应部分都return了,还有后面的数据部分的处理呢?
- 在这里,
.then()方法用于处理异步操作- 当我们在
.then()方法中返回一个值,这个值会被传递到下一个.then()方法,作为输入参数- 也就是说,响应部分解析的res.json()就是数据部分的输入data



land use prediction 类似
导入需要的库和模块




