react进行基本路由展示内容不显示

如果页面内容不展示,在App里面把component第一个小写
Home组件

import React, { Component } from 'react'

export default class Home extends Component {
  render() {
    return (
      <h1>sdfsdfsdfsdfsd</h1>
    )
  }
}

About组件

import React, { Component } from 'react'

export default class About extends Component {
  render() {
    return (
      <div>123</div>
    )
  }
}



然后是index.js

import React from "react";
import App from "./App";
import {createRoot} from 'react-dom/client' 

const container=document.getElementById('root');
const root=createRoot(container);
root.render(<App/>);

app.jsx

import React, { Component } from 'react'
import {Link,BrowserRouter,Route} from 'react-router-dom'
import Home from './components/Home'
import About from './components/About'

export default class App extends Component {
  render() {
    return (
      <div className="list">
       <BrowserRouter>
       <Link to="/about">About</Link>
        <Link to="/home">Home</Link>
        <div className="item">
        <Route  path="/about" component={About}></Route>
       <Route path="/home" component={Home}></Route>
          </div>
       </BrowserRouter>
      </div>
    )
  }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
React-Table是一个强大的JavaScript库,用于在前端展示表格数据,而React本身是一个用于构建用户界面的JavaScript库。要使用React-Table操作MongoDB数据库并显示数据,你需要遵循以下步骤: 1. **安装依赖**: 首先,你需要安装`react-table`, `mongoose`(用于处理MongoDB)以及可能需要的`axios`或`fetch`(用于API请求): ```bash npm install react-table mongoose axios (或 fetch) ``` 2. **设置环境变量**: 如果你的MongoDB服务是通过环境变量访问的,确保它们已设置。 3. **创建数据模型**: 使用Mongoose定义你的数据模型(例如,User.js): ```javascript import mongoose from 'mongoose'; const UserSchema = new mongoose.Schema({ name: String, email: { type: String, required: true, unique: true }, // ...其他字段 }); export default mongoose.model('User', UserSchema); ``` 4. **获取数据**: 创建一个函数(例如,fetchUsers.js)来从MongoDB获取数据: ```javascript import axios from 'axios'; import User from './models/User'; const fetchData = async () => { try { const response = await axios.get('/api/users'); const users = response.data.map((user) => new User(user)); return users; } catch (error) { console.error(error); } }; export default fetchData; ``` 5. **使用react-table**: 在你的React组件中(例如,App.js),引入相关库并使用数据: ```javascript import React, { useEffect, useState } from 'react'; import { useTable, useSortBy, usePagination } from 'react-table'; import fetchData from './fetchData'; const columns = [ // 定义列配置,如姓名、邮箱等 { Header: 'Name', accessor: 'name' }, { Header: 'Email', accessor: 'email' }, ]; const App = () => { const [data, setData] = useState([]); useEffect(() => { fetchData().then(setData); }, []); const table = useTable( { data, columns, initialState: { pageIndex: 0, pageSize: 10 }, // 其他表相关配置 }, useSortBy, usePagination ); // 渲染表格 return ( <div> <table {...table.tableProps}> <thead> {table.headerGroups.map((headerGroup) => ( <tr {...headerGroup.getHeaderGroupProps()}> {headerGroup.headers.map((column) => ( <th {...column.getHeaderProps(column.getSortByToggleProps())}> {column.render('Header')} {column.isSorted ? ( column.isSortedDesc ? ' 🔽' : ' 🔼' ) : ''} </th> ))} </tr> ))} </thead> <tbody {...table.tbodyProps}> {table.rows.map((row) => ( <tr {...row.getRowProps()}> {row.cells.map((cell) => ( <td {...cell.getCellProps()}>{cell.render('accessor')}</td> ))} </tr> ))} </tbody> </table> {/* 分页导航 */} {table.pageInfo && ( <div> {table.pageButtonParams.map((params) => ( <button key={params.page} onClick={() => table.gotoPage(params.page)}> {params.page} </button> ))} </div> )} </div> ); }; export default App; ``` 6. **后端API**: 如果没有现成的API,你需要在Node.js服务器端设置一个,如Express应用,创建路由处理GET请求返回数据: ```javascript // server.js or server/api.js const express = require('express'); const app = express(); const port = process.env.PORT || 5000; app.get('/api/users', (req, res) => { User.find().then((users) => res.json(users)); }); app.listen(port, () => { console.log(`Server running at http://localhost:${port}`); }); ``` 记得替换上述代码中的URL、模型字段和API路径,以便适应你的实际项目结构和需求。运行上述代码后,你应该能看到一个基本React应用,可以从MongoDB数据库获取并展示数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值