ant design pro 跨页面传参

本文详细介绍了在React应用中使用不同方法进行页面跳转及参数传递的具体实现,包括使用routerRedux、Link和router.push三种方式,对比了它们在刷新页面时参数保留情况的差异,并提供了具体的代码示例。

1、routerRedux方式(刷新页面,参数丢失)

import { routerRedux } from 'dva/router';
//页面跳转+参数
goOrder (record){
    this.props.dispatch(routerRedux.push({ 
      pathname: '/giveData/queryOrder',
      params: record.userId
    }))
  }

<a className={styles.oprLink} onClick={()=>this.goOrder(record)}>查订单</a>

参数接收: 使用this.props.location.params接收值。


2、link方式

import { Link } from 'react-router-dom';
// 或者 import { Link } from 'dva/router';

<Link to={{pathname:'/user',query:id}}>添加用户</Link>

参数接收:使用v2,v3的 this.props.location.query或者v4的this.props.location.search接收值。

 

3、router.push方式(刷新页面,参数不丢失)

import router from 'umi/router'
 
// 法一
// 先定义好路由
router.push(`/test/search/${param1}/${param2}`);

// 获取方式
const { match: { params } } = this.props;
cosnt param1 = params.param1;
cosnt param2 = params.param2;


// 法二
router.push({
    pathname: '/test/search/',
    query: {
        param1: param1,
        param2: param2,
    },
});

// 获取方式
const { location: { query } } = this.props;
cosnt param1 = query.param1;
cosnt param2 = query.param2;


原文:https://blog.youkuaiyun.com/qq_25252769/article/details/79958487 

其他参考方法: ant design列表页带参数跳转到详情页

                         https://www.jianshu.com/p/963a2a824832

                         https://www.cnblogs.com/yky-iris/p/9161907.html

                         https://www.jianshu.com/p/54e0c6317905

                         https://www.jianshu.com/p/1233d7f8d03c

<think>好的,用户想在Ant Design Pro中添加一个空白页面。我需要根据提供的引用内容来解答这个问题。 首先,根据引用[2],Ant Design Pro的服务请求层通常写在services文件夹下,但用户的问题是关于页面创建的,可能需要涉及路由和组件。引用[1]提到request.js处理请求,可能不直接相关,但可以忽略。引用[3]提到去除无效代码生成清晰的模板,可能涉及页面结构。引用[4]讨论登录页面和路由跳转,其中提到ReturnUrl和路径处理,这可能和路由配置有关。 接下来,我需要回忆Ant Design Pro的页面结构。通常,页面存放在src/pages目录下,每个页面对应一个文件夹。添加新页面需要创建组件,配置路由,并可能生成菜单项。 步骤一:创建页面组件。在src/pages下新建文件夹,比如NewPage,然后添加index.tsx和style.less。内容可以是一个简单的函数组件返回空白内容。 步骤二:配置路由。在config/config.ts或routes.ts中,找到路由配置,添加新的路由对象,指定path和component指向新建的页面组件。可能需要设置name和icon等元数据。 步骤三:生成菜单。如果需要在菜单中显示,检查路由的name和权限设置,确保菜单能正确渲染。如果不需要显示,可能需设置hideInMenu为true。 引用[2]提到服务层的位置,但这里主要是页面和路由的问题,所以重点在路由配置。引用[4]中的路由处理可能涉及权限或重定向,但用户的问题比较基础,可能不需要涉及这些高级配置。 验证步骤是否正确。确保组件导出正确,路由路径无误,菜单配置符合需求。如果有问题,可能需要检查路由的key或路径拼写错误。 最后,生成相关问题,考虑用户可能遇到的后续问题,比如路由传参、权限控制或样式处理,这些都是常见的后续步骤。</think>在Ant Design Pro中添加空白页面需要以下步骤: ### 一、创建页面组件 1. 在`src/pages`目录下新建文件夹(如`NewPage`) 2. 创建`index.tsx`文件: ```typescript export default () => { return <div>空白页面内容</div>; }; ``` 3. 创建`style.less`样式文件(可选) ### 二、配置路由 在`config/routes.ts`中添加路由配置: ```typescript { path: '/new-page', name: '新页面', icon: 'file', component: './NewPage', } ``` [^2] ### 三、生成菜单(可选) 若需要显示在侧边栏菜单,需确保: 1. 路由配置中包含`name`属性 2. 当前用户有该路由的访问权限 3. 若需要隐藏菜单项,可设置`hideInMenu: true` ### 四、访问验证 启动服务后通过`/new-page`路径即可访问新页面[^4]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值