修复uni-simple-router@2.0.7版本query参数null的bug

这篇具有很好参考价值的文章主要介绍了修复uni-simple-router@2.0.7版本query参数null的bug。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题:query参数为null或者为空时,插件内部参数校验问题导致的会报错:TypeError: Cannot convert undefined or null to object at Function.keys

源码修改如下:

修复uni-simple-router@2.0.7版本query参数null的bug,uniapp,uniapp,vue.js

通过打补丁的方式修复query参数类型校验问题

1. 安装patch-package
yarn add patch-package --dev
2、修改依赖包

已经修复的uni-simple-router@2.0.7版本:https://github.com/dressLz/uni-simple-router

下载项目,安装依赖后,执行:yarn run build 打包

复制dist下的三个文件:

修复uni-simple-router@2.0.7版本query参数null的bug,uniapp,uniapp,vue.js

替换项目node_modules中uni-simple-router下的dist包

3、创建补丁:
npx patch-package uni-simple-router

这将会创建一个名为 patches 的新目录,并在其中放置一个包含你的更改的 .patch 文件。

4. 在构建过程中自动应用补丁

在你的 package.json 文件中的 scripts 部分添加如下脚本:

Json
"scripts": {
  "postinstall": "patch-package"
}

这样一来,每次执行 npm install 或 yarn 时,都会自动应用所有的补丁。

此时再启动项目,query参数的问题就会修复,一切运行正常。

⚠️注意uni-simple-router版本升级

当你依赖的库更新后,之前为旧版本创建的补丁可能无法直接应用到新版本上。patch-package 生成的补丁文件是基于特定版本的源代码差异制作的,如果依赖库在新版本中进行了结构或者逻辑上的改动,这些补丁可能不再匹配新的源代码。

因此,在升级依赖包之后,你需要:

  1. 首先检查新版本是否已经包含了你之前通过补丁修复的问题。
  2. 如果新版本没有解决该问题,你需要重新审视新版本的源码,并对新版本进行相应的修改。
  3. 修改完毕后,再次运行 npx patch-package uni-simple-router 来生成针对新版本的补丁文件。

总之,每次更新依赖库时,请确保检查和验证已有的补丁是否仍然适用,并根据需要创建新的补丁以适应新版本的库。文章来源地址https://www.toymoban.com/news/detail-802825.html

到了这里,关于修复uni-simple-router@2.0.7版本query参数null的bug的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Elasticsearch:理解 query_string 和 simple_query_string 查询

    针对很多的开发者来说,如果你不是很熟悉 DSL 查询,那么在有些情况下,query_string 及 simple_query_string 变得非常灵活及方便。在今天的文章中,我来比较一下这两种查询的方法。 我们先使用 _bulk 命令创建如下的一个索引: 此查询使用语法根据运算符(例如 AND 或 NOT)解析和

    2023年04月10日
    浏览(32)
  • vue-router 传参:query传参、params传参

    (query传参演示在二级路由基础上演示,二级路由参考:vue-router 路由创建、路由嵌套、二级路由) 创建出以下文件(新创建文件为Desc.vue文件)(二级路由文件下载链接:链接:https://pan.baidu.com/s/1Tny4Erp6iPCsrmrIX_QRCA 提取码:3524) 1、Desc.vue 文件 2、index.js 写入路由 3、Course.

    2024年02月03日
    浏览(33)
  • Vue 删除query中个别参数或清除query

    在写项目过程中涉及到一个需求,大概形容一下就是第一次进入会有一个编辑弹窗,如果点击编辑弹窗的保存按钮后,刷新页面,弹窗则不在弹出。

    2024年02月16日
    浏览(30)
  • HTTP参数类型中的Query和Body参数

    在接口中常见到query参数和body参数,那么它对应的传参方式是? ★ query 查询参数 --- params --- route. params .参数 ★ body 请求体参数 --- data ---  route. query .参数 总结 : GET请求 只能传Query参数, POST请求 可以传Query和Body两种形式的参数 Query查询参数 ,将参数拼在请求地址上。

    2024年02月06日
    浏览(28)
  • axios query传数组参数的格式

    在 Axios 中,当你需要传递数组参数时,可以使用以下几种方式进行格式化: 使用  paramsSerializer 将数组转换为逗号分隔的字符串: 这将发送一个类似于以下的请求:   https://api.example.com/endpoint?array=param1,param2,param3  使用   indices   格式(默认行为): 这将发送一个类似于以

    2024年01月20日
    浏览(29)
  • axios同时使用查询参数(query)和请求体参数(body)发送请求

    当使用 axios.post 方法发送请求时,可以同时添加查询参数(query)和请求体参数(body)。具体的方法是将查询参数添加到URL中,并将请求体参数作为 data 属性传递给 axios.post 方法。 代码演示: 下面是一个示例,演示了如何将查询参数和请求体参数同时传递给 axios.post 方法:

    2024年03月11日
    浏览(42)
  • 【uniapp】获取url中的参数this.$route.query或this.$mp.query

    在uniapp中获取url中的参数值可以通过 this.$route.query 或者 this.$mp.query 来获取。 假设你要获取url中的code参数,可以使用以下代码: 或者 其中,第一种方法适用于h5、APP和微信小程序等平台,而第二种方法只适用于微信小程序平台。

    2024年02月14日
    浏览(29)
  • 小程序Url Link跳转怎么获取query参数?

    我是通过这种方式接收参数的,如果想验证可以通过编译器模拟:

    2024年02月17日
    浏览(28)
  • vue路由及参数router

    1.1 如果还没安装node.js, 则先安装node.js ,安装完成后,查看node版本 1.2 安装淘宝镜像, 安装完成后查看npm版本:npm -v 1.3 安装webpack 1.4 安装vue全局脚手架,vue-cli2.x使用 npm install -g vue-cli , vue-cli3.x使用 npm install -g @vue/cli 安装, 查看vue版本: vue -V 1.5 准备工作做好了,开始正

    2024年01月23日
    浏览(34)
  • 使用 Postman 传递请求参数:Query、Path 和 Body 教程

    Postman  作为一个功能强大的工具,极大地简化了 API 测试和调试的过程,提供了发送请求和检查响应的直接方法。本文将着重介绍如何在 Postman 中高效地处理请求参数,以提高 API 测试和开发的便利性。 首先,我们需要明白什么是请求参数。简单来说,请求参数是传递给服务

    2024年04月23日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包