发动态
佬们,请问立创的简易示波器上的元器件可以换成贴片的吗, 我用来测25V一下的电压#嘉立创PCB#
兄弟们贵重的PCB打样一定要买保险,太有用了
嘉立创打样20片板子全部短路,于客服沟通后承认工艺问题后免费补了20片板子,但是贴的芯片和阻容不予搬板,客服态度还不错,就是他们领导的意思就是谁让谁让你不买保险的,已经给你补了20片板子了,还想干嘛。让他们搬板和要个卷就是拖,最后打电话说啥也没有,所以兄弟们建议贵重的pcb一定要买保险
PCB项目管理中不要的项目可以删除吗?我的好像建立了就删除不了?没有看到任何删除的按钮或工具
练习的时候新建了一些项目,一直保存在所有工程列表里,怎么删除他们 #嘉立创PCB#
标准版切换到底层的时候顶层焊盘消失(反之亦然),仅一个文件有此现象,怎么调整回来?
切换到底层后移动顶层元件又可以显示,但仿佛切换又会消失
AD中为什么新画符号添加封装后在原理图通没有模型
抽到的开发板到了,看看可以做啥 逛逛wiki去
#DIY设计# #PCB有什么好玩的# [呲牙][呲牙][呲牙]
开源文章:太原工业学院晋速北极星方程式赛车队致谢嘉立创EDA\n\n简介:太原工业学院晋速北极星方程式赛车队全体成员由衷感谢嘉立创EDA,在自主研发制作中国大学生方程式汽车大赛所用PCB的道路上,感谢嘉立创对我们车队的大力支持。\n\n文章链接:[https://oshwhub.com/article/thanks-to-jialichuang-eda]
ESP32-S3问题求助 #ESP8266/32#
我自己设计了一个ESP32-S3的最小系统,但是无法进入下载模式,请教大佬,是哪里出了问题
寻找高手帮忙做一个原理图和PBC板,付费
全在线模式同步问题?
#嘉立创PCB# #EDA软件# 我使用的是专业版全在线模式,现在有一个工程,我做了修改之后保存就关闭了,第二天打开有一个提示云端同步到本地 本地同步到远端,我没注意就点了第一个,发现做的修改都没了,又回到了原来的样子,还能恢复吗
两节18650串联7.4V,用什么充电IC可以满足2A充电电流捏
[撇嘴]
作者:21Pilots一次代码CR引发的困惑“你这块的代码,没有做异常捕获呀,要是抛出了异常,可能会影响后续的代码流程”。这是一段出自组内代码CR群的聊天记录。代码类似如下: const asyncErrorThrow = () => { return new Promise((resolve, reject) => { // 业务代码... // 假设这里抛出了错误 throw new Error('抛出错误'); // 业务代码... }) } const testFun = async () => { await asyncErrorThrow(); console.log("async 函数中的后续流程"); // 不会执行 } testFun(); 在 testFun 函数中,抛出错误后,await 函数中后续流程不会执行。仔细回想一下,在我的前端日常开发中,对于错误捕获,还基本停留在使用 Promise时用 catch 捕获一下 Promise 中抛出的错误或者 reject,或者最基本的,在使用 JSON.parse、JSON.stringfy等容易出错的方法中,使用 try..catch... 方法捕获一下可能出现的错误。后来,这个同学将代码改成了:const asyncErrorThrow = () => { return new Promise((resolve, reject) => { // 业务代码... throw new Error('抛出错误'); // 业务代码... }) } const testFun = async () => { try { await asyncErrorThrow(); console.log("async 函数中的后续流程"); // 不会执行 } catch (error) { console.log("若错误发生 async 函数中的后续流程"); // 会执行 } } testFun(); 而这次不同的是,这段修改后的代码中使用了 try...catch...来捕获 async...await... 函数中的错误,这着实让我有些困惑,让我来写的话,我可能会在 await 函数的后面增加一个 catch:await asyncErrorThrow().catch(error => {})。因为我之前已经对 try..catch 只能捕获发生在当前执行上下文的错误(或者简单理解成同步代码的错误)有了一定的认知,但是 async...await... 其实还是异步的代码,只不过用的是同步的写法,为啥用在这里就可以捕获到错误了呢?在查阅了相当多的资料之后,才清楚了其中的一些原理。<顺便吆喝一句内推,技术大厂捞人捞人,前后端测试,东莞深圳等地急招~感兴趣来>Promise 中的错误我们都知道,一个 Promise 必然处于以下几种状态之一:待定(pending):初始状态,既没有被兑现,也没有被拒绝。已兑现(fulfilled):意味着操作成功完成。已拒绝(rejected):意味着操作失败。当一个 Promise 被 reject 时,该 Promise 会变为 rejected 状态,控制权将移交至最近的 rejection 处理程序。最常见的 rejection 处理程序就是 catch handler或者 then 函数的第二个回调函数。而如果在 Promise 中抛出了一个错误。这个 Promise 会直接变成 rejected 状态,控制权移交至最近的 error 处理程序。 const function myExecutorFunc = () => { // 同步代码 throw new Error(); }; new Promise(myExecutorFunc); Promise 的构造函数需要传入的 Executor 函数参数,实际上是一段同步代码。在我们 new 一个新的 Promise 时,这个 Executor 就会立即被塞入到当前的执行上下文栈中进行执行。但是,在 Executor 中 throw 出的错误,并不会被外层的 try...catch 捕获到。 const myExecutorFunc = () => { // 同步代码 throw new Error(); }; try { new Promise(myExecutorFunc); } catch (error) { console.log('不会执行: ', error); } console.log('会执行的'); // 打印 其原因是因为,在 Executor 函数执行的过程中,实际上有一个隐藏的机制,当同步抛出错误时,相当于执行了 reject 回调,让该 Promise 进入 rejected 状态。而错误不会影响到外层的代码执行。 const myExecutorFunc = () => { throw new Error(); // 等同于 reject(new Error()); }; new Promise(myExecutorFunc); console.log('会执行的'); // 打印 同理 then 回调函数也是这样的,抛出的错误同样会变成 reject。在一个普通脚本执行中,我们知道抛出一个错误,如果没有被捕获掉,会影响到后续代码的执行,而在 Promise 中,这个错误不会影响到外部代码的执行。对于 Promise 没有被捕获的错误,我们可以通过特定的事件处理函数来观察到。new Promise(function() { throw new Error(""); }); // 没有用来处理 error 的 catch // Web 标准实现 window.addEventListener('unhandledrejection', function(event) { console.log(event); // 可以在这里采取其他措施,如日志记录或应用程序关闭 }); // Node 下的实现 process.on('unhandledRejection', (event) => { console.log(event); // 可以在这里采取其他措施,如日志记录或应用程序关闭 }); Promise 是这样实现的,我们可以想一想为什么要这样实现。我看到一个比较好的回答是这个:传送门。我也比较赞成他的说法,我觉得,Promise 的诞生是为了解决异步函数过多而形成的回调地狱,使用了微任务的底层机制来实现异步链式调用。理论上是可以将同步的错误向上冒泡抛出然后用 try...catch... 接住的,异步的一些错误用 catch handler 统一处理,但是这样做的话会使得 Promise 的错误捕获使用起来不够直观,如果同步的错误也进行 reject 的话,实际上我们处理错误的方式就可以统一成 Promise catch handler 了,这样其实更直观也更容易让开发者理解和编写代码。async await 的问题那么回到我们最开始的问题,在这个里面,为什么 try catch 能够捕获到错误? jconst asyncErrorThrow = () => { return new Promise((resolve, reject) => { // 业务代码... throw new Error('抛出错误'); // 业务代码... }) } const testFun = async () => { try { await asyncErrorThrow(); console.log("async 函数中的后续流程"); // 不会执行 } catch (error) { console.log("若错误发生 async 函数中的后续流程"); // 会执行 } } testFun(); 我思考了很久,最后还是从黄玄大佬的知乎回答中窥见的一部分原理。这...难道就是浏览器底层帮我们处理的事儿吗,不然也没法解释了。唯一能够解释的事就是,async await 原本就是为了让开发者使用同步的写法编写异步代码,目的是消除过多的 Promise 调用链,我们在使用 async await 时,最好就是不使用 .catch 来捕获错误了,而直接能使用同步的 try...catch... 语法来捕获错误。即使 .catch 也能做同样的事情。只是说,代码编写风格统一性的问题让我们原本能之间用同步语法捕获的错误,就不需要使用 .catch 链式调用了,否则代码风格看起来会有点“异类”。这就是为什么 async MDN 中会有这样一句解释:参考文档:《使用Promise进行错误治理》- zh.javascript.info/promise-err…《为什么try catch能捕捉 await 后 promise 错误? 和执行栈有关系吗?》www.zhihu.com/question/52…
前端:为什么 try catch 能捕捉 await 后 Promise 的错误?
怎么让原理图导入pcb的时候电容的一端只连接我原理图上连接的引脚?我不知道大家能否懂我的意思,我想让电容c24和我的主控芯片88引脚绑定。这个问题不知道立创eda有没有这个功能,也就是说相当于88脚可以连接两个网络,一个连接+3.3v,一个连接电容一端。
#嘉立创PCB# 求助 如何开窗露铜
请教一下,出现这个情况是什么原因造成的呢,谢啦
为什么3天了还是0%
到底开关速度多少ns才算是高速MOS?怎么定义这个是不是高频MOS
社区数据
今日帖子
-
今日互动量
-
在线人数
-
帖子总量
-
用户总量
-
推荐话题 换一批
#嘉立创PCB#
#畅聊专区#
#DIY设计#
#PCB有什么好玩的#
#星火计划2024#
#嘉立创#
#ESP8266/32#
#WiFi/以太网#
查看更多热门话题
粤ICP备2023121300号 · 用户协议 · 隐私政策 · 侵权举报 · ISO/IEC · Copyright © 2024 嘉立创社区版权所有
服务热线:18682363881 ·  服务时间:周一至周六 9::00-18:00 · 联系地址:中国·深圳(福田区商报路奥林匹克大厦27楼) · 媒体沟通:pr@jlc.com · 集团介绍