try catch 解决大问题

项目开发中遇到一个棘手的bug,react前端项目独自运行时一切正常,但是把项目集成到使用wujie的大平台微前端项目中之后,突然有个地方无故报错,导致程序运行停止,后续的方法不再执行。报错如下:

DOMException: Failed to execute 'querySelector' on 'Document': '#13' is not a valid selector.at Object.apply (http://localhost:5173/node_modules/.vite/deps/wujie-vue3.js?v=0186d2fe:3211:137)at new n.fn.init (<anonymous>:3:24217)at n (<anonymous>:3:405)at l (<anonymous>:2:1940588)at HTMLDivElement.drop (<anonymous>:2:1941711)at t.<computed>.<computed>._trigger (<anonymous>:7:11090)at t.<computed>.<computed>._drop (<anonymous>:12:12603)at t.<computed>.<computed>._drop (<anonymous>:7:4499)at t.<computed>.<computed>.<anonymous> (<anonymous>:12:14717)at Function.each (<anonymous>:3:2882) 'error'

报错部分的代码如下

    //防止节点id重复   type 节点类型, num 当前顺序号function judgeId(type, num) {let id = type + numlet domstry {doms = $('#' + id)if (doms.length !== 0) {TuoZhuaiFangId = num + 1return judgeId(type, TuoZhuaiFangId)}} catch (error) {console.log(error,"error")}return type + num}

上网查询一大圈之后,发现可能是由于wujie把getElementbyId的方法自动转换成了querySelector而,querySelector方法不允许查找由纯数字组成的id名称,否则就会报错。试了一大堆方法,都无法解决这个报错,最后经过前端组长提醒,可用try catch捕获异常、抛出错误,果然加上try catch后问题解决,报错不再影响后续代码执行。又是血淋淋的教训,研究了半天的问题,加个try catch轻松解决。这个教训提醒我还是经验不足,遇到问题解决思路太过局限!以后遇到问题又多出一条解决思路,那就使用try catch抛出异常!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/45507.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

5款文案生成神器,自动一键生成原创文案

文案在我们的生活中随处可见&#xff0c;好的文案内容不仅可以为企业带来销售转化&#xff0c;而且还能提升品牌的影响力&#xff0c;因此文案的重要性可想而知&#xff0c;对于文案创作者来说&#xff0c;写作好的文案不是轻松容易的事&#xff0c;但如果把这个任务交给文案生…

C++ 函数返回值是void* 使用场景

函数返回值为 void* 的使用场景主要涉及以下几个方面&#xff1a; 1、 通用指针传递 void* 是一种通用指针类型&#xff0c;可以指向任何类型的数据。在某些情况下&#xff0c;你可能需要编写一个函数&#xff0c;该函数可以返回指向不同类型数据的指针。使用 void* 可以实现…

Python中的null是什么?

在知乎上遇到一个问题&#xff0c;说&#xff1a;计算机中的「null」怎么读&#xff1f; null正确的发音是/n^l/&#xff0c;有点类似四声‘纳儿’&#xff0c;在计算机中null是一种类型&#xff0c;代表空字符&#xff0c;没有与任何一个值绑定并且存储空间也没有存储值。 P…

MySQL CONCAT函数的简单使用

CONCAT函数用于将mysql中查询多列的值拼成一列显示&#xff0c; 使用示例&#xff1a; SELECT CONCAT(attr_name,"&#xff1a;",attr_value) FROM pms_sku_sale_attr_value WHERE sku_id1; 上面SQL语句使用CONCAT函数将attr_name、attr_value两列的值拼成一列&am…

动态sql 单选变多选

实体类 添加数组存储值 private ArrayList tssjfjList; <!-- <if test"tssjfj ! null and tssjfj ! ">and tssjfj #{tssjfj}</if>--><if test"tssjfjList ! null and tssjfjList.size() > 0">AND tssjfj IN<fo…

JeecgBoot 前端 vue3 项目,配置项目多页面入口

前端 vue3配置项目多页面入口 1.项目根目录新建home.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><…

Rust Hello

首先还是安装&#xff1a; 一定要换源&#xff0c;否则真的太慢了。 curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh 就是~/.cargo/config [source.crates-io] # 替换成你偏好的镜像源 replace-with tuna# 清华大学 5mb [source.tuna] registry "htt…

数字信号处理教程(4)—— 离散傅里叶变换DFT

今天继续数字信号处理的学习&#xff0c;本次我们将来聊聊离散傅里叶变换DFT(Discrete Fourier Transform)。DFT是数字信号处理领域中应 用最为广泛的离散变换。DFT将一个序列x(n)映射到频率域。DFT 的许多性质都与对模拟信号进行傅里叶变换的性质相同。里面包含着大量的算法值…

Spring IOC深入理解之源码实现

1、Spring IOC的理解 IOC&#xff1a;Inversion Of Control&#xff0c;即控制反转&#xff0c;是一种设计思想。在传统的 Java SE 程序设计中&#xff0c;我们直接在对象内部通过 new 的方式来创建对象&#xff0c;是程序主动创建依赖对象&#xff1b;而在Spring程序设计中&a…

论文研读:ViT-V-Net—用于无监督3D医学图像配准的Vision Transformer

目录 摘要 介绍 方法 VIT-V-Net体系结构 损失函数 图像相似性度量 变形场正则化 结果与讨论 摘要 在过去的十年里&#xff0c;卷积神经网络(ConvNets)在各种医学成像应用中占据了主导地位并取得了最先进的性能。然而&#xff0c;由于缺乏对图像中远程空间关系的理解&a…

Gitlab CI/CD介绍

基本概念 GitLab CI/CD&#xff08;持续集成/持续部署&#xff09;流水线是GitLab平台提供的一项强大功能&#xff0c;旨在通过自动化构建、测试和部署过程&#xff0c;提高开发团队的效率和软件发布的质量。 CI&#xff08;Continuous Integration&#xff09;&#xff1a;持续…

QT5.12.9 通过MinGW64 / MinGW32 cmake编译Opencv4.5.1

一、安装前准备: 1.安装QT,QT5.12.9官方下载链接:https://download.qt.io/archive/qt/5.12/5.12.9/ QT安装教程:https://blog.csdn.net/Mark_md/article/details/108614209 如果电脑是64位就编译器选择MinGW64,32位就选择MinGW32,我的是MinGW64。 2.opencv源码下载:h…

linux登入提示信息

目录 1.Linux 登录提示信息在操作系统中扮演着重要的角色 安全性提醒 欢迎信息 系统状态通知 政策和使用条款 技术支持信息 更新和变更通知 2.配置文件介绍 3.编辑配置文件 4.效果展示 修改前 修改后 “如果您在解决类似问题时也遇到了困难&#xff0c;希望我的经…

ActiViz实战:基于ActiViz 9.2的医学影像三维重建MPR的简单示例

文章目录 效果预览核心代码源码地址总结效果预览 基于ActiViz 9.2的医学影像三维重建之MPR重建 核心代码 vtkProperty ipwProp = vtkProperty.New(); vtkImagePlaneWidget[] planeWidget = new vtkImagePlaneWidget

面试题 14- I. 剪绳子

剪绳子 题目描述示例 题解 题目描述 给你一根长度为 n 的绳子&#xff0c;请把绳子剪成整数长度的 m 段&#xff08;m、n都是整数&#xff0c;n>1并且m>1&#xff09;&#xff0c;每段绳子的长度记为 k[0],k[1]...k[m-1] 。请问 k[0] * k[1] *...* k[m-1] 可能的最大乘积…

14-50 剑和诗人24 - 开源 AI 的下一个重大飞跃:多个小模型与大模型相媲美

介绍 大型语言模型 (LLM) 领域最近取得了快速进展&#xff0c;GPT-4、PaLM-2、Llama-2 等模型正在突破 AI 对语言处理能力的界限。然而&#xff0c;只有少数几家大型科技公司拥有训练包含数千亿个参数的模型所需的大量计算资源&#xff0c;才能使用最大的模型。 作为回应&…

鼠标怎么挑选

我们平时工作中经常要用到鼠标&#xff0c;那么哪种鼠标比较好。我们今天就来研究下。 手感要好 鼠标最重要的就是手感。这个看参数看不出来。最好能到实体店里面去体验一下&#xff0c;自己上手试一下。 如果现在都是在网上买了&#xff0c;去实体店过于麻烦&#xff0c;并且…

[题解]P1115 最大子段和

本蒟蒻太菜了&#xff0c;还不太能理解为什么&#xff0c;先存一下题解&#xff0c;有时间再来研究。 分治法 O ( n log ⁡ n ) O(n\log n) O(nlogn) #include<bits/stdc.h>using namespace std; using lllong long; int n; vector<int>v; int Find(int l,int r)…

[Yii] 实战开发微信服务号+Yii 2.0构建商城系统全栈应用

YII 实战开发微信服务号Yii 2.0构建商城系统全栈应用 课程地址&#xff1a;http://ityuanke.com/thread-14-1-1.html 微信服务号Yii2.0构建商城系统全栈应用 依托微信服务号高级特性及Yii 2.0技术为核心&#xff0c;手把手带你从零开发一个带完整PC后台的微信图书商城的全栈应用…

centos 安装vnc,配置图形界面

centos 安装vnc,配置图形界面 在CentOS上安装和配置VNC服务以使用图形用户界面&#xff0c;你可以按照以下步骤操作&#xff1a; 安装VNC服务器 sudo yum install -y tigervnc-server 复制VNC配置模板文件 cp /lib/systemd/system/vncserver.service /etc/systemd/system/…