当前位置:首页 > React

react如何点击跳转详情页

2026-01-25 23:48:25React

路由配置

使用 react-router-dom 库配置路由,确保详情页有独立的路由路径。在项目入口文件或路由配置文件中定义路由规则:

import { BrowserRouter as Router, Route, Routes } from 'react-router-dom';
import DetailPage from './DetailPage';

function App() {
  return (
    <Router>
      <Routes>
        <Route path="/detail/:id" element={<DetailPage />} />
      </Routes>
    </Router>
  );
}

组件跳转逻辑

在列表项或按钮的点击事件中,通过 useNavigate 钩子实现编程式导航。传递参数(如ID)到详情页:

react如何点击跳转详情页

import { useNavigate } from 'react-router-dom';

function ItemList() {
  const navigate = useNavigate();

  const handleClick = (id) => {
    navigate(`/detail/${id}`);
  };

  return (
    <button onClick={() => handleClick(item.id)}>查看详情</button>
  );
}

详情页参数获取

在详情页组件中通过 useParams 钩子提取路由参数,用于数据加载或展示:

react如何点击跳转详情页

import { useParams } from 'react-router-dom';

function DetailPage() {
  const { id } = useParams();
  // 根据id获取数据逻辑...
  return <div>详情页ID: {id}</div>;
}

动态数据加载

结合 useEffect 和异步请求,在详情页根据ID获取数据:

import { useEffect, useState } from 'react';

function DetailPage() {
  const [data, setData] = useState(null);
  const { id } = useParams();

  useEffect(() => {
    fetch(`/api/items/${id}`)
      .then(res => res.json())
      .then(setData);
  }, [id]);

  return data && <div>{data.content}</div>;
}

样式与交互优化

为点击元素添加悬停效果或加载状态,提升用户体验:

<button 
  onClick={() => handleClick(item.id)}
  style={{ cursor: 'pointer', transition: 'all 0.3s' }}
  className="hover:scale-105"
>
  {isLoading ? '加载中...' : '查看详情'}
</button>

标签: 跳转详情页
分享给朋友:

相关文章

vue 实现页面跳转

vue 实现页面跳转

vue 实现页面跳转的方法 在 Vue 中实现页面跳转主要通过路由(Vue Router)完成,以下是几种常见的方式: 声明式导航(模板中使用 <router-link>) 在模板中直接…

h5实现登录页面跳转页面跳转页面跳转页面

h5实现登录页面跳转页面跳转页面跳转页面

实现登录页面跳转的方法 在H5中实现登录页面跳转可以通过多种方式完成,以下是一些常见的方法: 使用JavaScript的window.location方法 通过JavaScript的window.l…

vue实现拼接路径实现跳转

vue实现拼接路径实现跳转

在Vue中拼接路径并实现跳转 使用Vue Router的router.push方法结合模板字符串或路径拼接方法 // 在方法中拼接路径 methods: { navigateTo(path) {…

php怎样实现页面跳转页面

php怎样实现页面跳转页面

PHP实现页面跳转的方法 使用header()函数实现跳转 通过设置HTTP头信息中的Location字段实现跳转,需确保在调用前没有输出任何内容。示例代码: header("Location: h…

vue实现跳转页面

vue实现跳转页面

Vue 实现页面跳转的方法 在 Vue 中实现页面跳转可以通过多种方式,以下是几种常见的方法: 使用 router-link 组件 router-link 是 Vue Router 提供的组件,用于…

vue页面实现跳转

vue页面实现跳转

Vue 页面跳转的实现方法 在 Vue 中实现页面跳转可以通过以下几种方式,具体选择取决于项目需求和场景。 使用 router-link 组件 router-link 是 Vue Router 提供…