umi - history传参

本文介绍了Umi框架中路由参数的不同传参方式(query,search,state)及其特点,强调了新版本中query的使用推荐以及如何通过自定义属性控制刷新后参数消失的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Umi 路由传参

1. query \ search 两者是一致的 ,保存方式不同。展示到路由里为:xx/xx/?aa=11&bb=22 这种格式

来自官网:location 中的 query 不再支持了,后续推荐用 search

2. state \ query \ search 刷新后都不丢失
3、state 不展示到路由

在这里插入图片描述
以下是 新版本umi history.push 的入参定义的

export interface LocationDescriptorObject<S = LocationState> {
    pathname?: Pathname;
  	
  	query?: ParsedQuery;
    search?: Search;
    state?: S; 

    hash?: Hash;
    key?: LocationKey;
  
}
4、 xx/:id/xx这种传参方式。在老版本的umi 里通过: this.props.match访问到数据. 新的是通过,useMath 详见官网

在这里插入图片描述

react路由传参

3种方式

params \ search \ state 其中 state不展示到页面。hash路由模式下,刷新会丢失。
params: 是 /:id/ 这种
search 是 /?xxx=1213 这种
state : 不展示到页面

参考

问题: 我想给某个页面穿个参数,但是还想让刷新后,参数消失怎么做?

解答:定义一个不存在于history.push入参里的属性即可

 history.push({
                pathname: '/package/list/',
                query: { customer_id },
                needRefresh: true,   //这个属性就是自己加的,刷新后就会消失
              } as LocationDescriptorObject);
在按键精灵中调用 Umi-OCR 命令行工具时,可以通过两种方式指定路径:一种是将 Umi-OCR 的可执行文件目录添加到系统环境变量中,使其可以在任意位置通过命令调用;另一种是在脚本中直接使用完整路径调用 Umi-OCR 的可执行文件。 ### 将 Umi-OCR 添加到系统路径 1. 打开“控制面板” → “系统和安全” → “系统” → “高级系统设置”。 2. 在“系统属性”窗口中点击“环境变量”。 3. 在“系统变量”部分找到 `Path` 变量并点击“编辑”。 4. 点击“新建”,然后输入 Umi-OCR 可执行文件所在的目录路径(例如 `E:\Umi-OCR`)。 5. 点击“确定”保存更改,并重启命令提示符或相关应用程序以使更改生效[^1]。 完成上述操作后,可以在按键精灵中直接使用以下代码调用 Umi-OCR: ```vbs Dim shell, execResult Set shell = CreateObject("WScript.Shell") Set execResult = shell.Exec("cmd.exe /c umi-ocr --path ""e:/test.png"" --output ""C:\Output\result.txt""") TracePrint("标准输出:" & execResult.StdOut.ReadAll()) TracePrint("错误输出:" & execResult.StdErr.ReadAll()) ``` ### 使用完整路径调用 Umi-OCR 若不希望修改系统环境变量,也可以直接在按键精灵脚本中使用完整路径来调用 Umi-OCR。此方法适用于未将 Umi-OCR 添加到系统路径的情况。示例代码如下: ```vbs Dim shell, execResult Set shell = CreateObject("WScript.Shell") Set execResult = shell.Exec("cmd.exe /c ""E:\Umi-OCR\umi-ocr.exe"" --path ""e:/test.png"" --output ""C:\Output\result.txt""") TracePrint("标准输出:" & execResult.StdOut.ReadAll()) TracePrint("错误输出:" & execResult.StdErr.ReadAll()) ``` 该方式确保即使程序不在系统 PATH 中,也能正确调用 Umi-OCR 执行图像识别任务[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值