当前位置: 首页 > news >正文

郴州网站建设ku0735昆明关键词优化

郴州网站建设ku0735,昆明关键词优化,南通做网站找谁,免费发布便民信息平台JavaScript使用promise顺序调用函数并抛出异常 场景 新建或者编辑时,一个页面中存在多个表单,每个表单都有单独进行表单验证。点击提交时,若有一个表单校验失败,则不能提交。 ps:为啥不放在一个表单中? (…

JavaScript使用promise顺序调用函数并抛出异常

场景

新建或者编辑时,一个页面中存在多个表单,每个表单都有单独进行表单验证。点击提交时,若有一个表单校验失败,则不能提交。
ps:为啥不放在一个表单中?
(⊙o⊙)…旧项目改造,业务实现中存在嵌套在多个折叠面板中的form表单,且部分表单验证会影响后续表单的验证

实现思路

可以使用 Promise 的链式调用来实现这个功能。即在前一个函数的then回调中调用后一个方法,最后通过catch抛出错误。

具体示例

<script>function validateMethod1() {return new Promise((resolve, reject) => {// 验证方法一的代码let temp1 = Math.random() * 10console.log('temp1', temp1)const isValid = temp1 > 5; // 假设验证方法一通过if (isValid) {resolve();} else {reject(new Error("验证方法一失败"));}});}function validateMethod2() {return new Promise((resolve, reject) => {let temp2 = Math.random() * 10console.log('temp2', temp2)// 验证方法二的代码const isValid = temp2 > 6; // 假设验证方法二通过if (isValid) {resolve();} else {reject(new Error("验证方法二失败"));}});}validateMethod1().then(() => validateMethod2()).then(() => {console.log("两个方法都验证通过了");}).catch((error) => {console.error(error.message);});
</script>

上面的代码中,先定义了两个验证方法 validateMethod1 和 validateMethod2,它们都返回 Promise 对象。在 Promise 链式调用中,先调用 validateMethod1,如果验证通过就继续调用 validateMethod2,最后在链式调用的最后一个 then 方法中输出成功信息。如果在验证方法中出现错误,则会被捕获并输出错误信息。

为什么每一个方法中都需要return一个promise?

是的,每一个方法都需要返回一个 Promise 对象。Promise 是 JavaScript 中的一种异步编程解决方案,可以很好地处理异步代码的执行顺序和结果传递等问题。

在上面的例子中,validateMethod1 和 validateMethod2 都返回了一个 Promise 对象,并在验证通过时调用 resolve 方法,在验证失败时调用 reject 方法,并传入一个错误对象。这样,在链式调用中,当一个方法验证通过时,就会继续执行下一个方法,如果有一个方法验证不通过,就会在链式调用中捕获到错误并输出错误信息。

如果一个方法没有返回 Promise 对象,就无法使用 Promise 链式调用来串联多个方法。因此,每一个方法都需要返回一个 Promise 对象,以便能够使用 Promise 链式调用来实现方法的调用和验证。

补充:

上述示例只是一个简单的实现思路,不代表具体业务逻辑。

问题场景存在局限性,仅作为自身解决问题的记录


文章转载自:
http://vina.c7512.cn
http://irrecognizable.c7512.cn
http://accuser.c7512.cn
http://pheochromocytoma.c7512.cn
http://desulfurize.c7512.cn
http://colonelcy.c7512.cn
http://neutrosphere.c7512.cn
http://illusion.c7512.cn
http://accelerant.c7512.cn
http://isker.c7512.cn
http://attentively.c7512.cn
http://guajira.c7512.cn
http://phenylalanine.c7512.cn
http://inappreciably.c7512.cn
http://strain.c7512.cn
http://corollaceous.c7512.cn
http://unlistening.c7512.cn
http://flavour.c7512.cn
http://curfew.c7512.cn
http://wail.c7512.cn
http://romancist.c7512.cn
http://lusatian.c7512.cn
http://triplice.c7512.cn
http://expeditionist.c7512.cn
http://armful.c7512.cn
http://unpleated.c7512.cn
http://agential.c7512.cn
http://corpuscule.c7512.cn
http://beylic.c7512.cn
http://dabble.c7512.cn
http://oolitic.c7512.cn
http://eustonian.c7512.cn
http://snafu.c7512.cn
http://radicalization.c7512.cn
http://great.c7512.cn
http://unsparingly.c7512.cn
http://willful.c7512.cn
http://carbine.c7512.cn
http://memento.c7512.cn
http://clergywoman.c7512.cn
http://jor.c7512.cn
http://massasauga.c7512.cn
http://biologic.c7512.cn
http://trailblazer.c7512.cn
http://altimeter.c7512.cn
http://squawk.c7512.cn
http://prongy.c7512.cn
http://vestock.c7512.cn
http://lekvar.c7512.cn
http://astrionics.c7512.cn
http://kaolinite.c7512.cn
http://dementation.c7512.cn
http://homily.c7512.cn
http://criteria.c7512.cn
http://saxicavous.c7512.cn
http://forgery.c7512.cn
http://deambulatory.c7512.cn
http://reservist.c7512.cn
http://lupanar.c7512.cn
http://boaster.c7512.cn
http://frequentist.c7512.cn
http://fortuity.c7512.cn
http://phreak.c7512.cn
http://gyrovague.c7512.cn
http://unbend.c7512.cn
http://retiarius.c7512.cn
http://inboard.c7512.cn
http://whey.c7512.cn
http://nonsectarian.c7512.cn
http://balaclava.c7512.cn
http://shimmy.c7512.cn
http://disintegrative.c7512.cn
http://blossom.c7512.cn
http://noontime.c7512.cn
http://abyssinia.c7512.cn
http://co.c7512.cn
http://decrepit.c7512.cn
http://fagot.c7512.cn
http://newsweekly.c7512.cn
http://tetrasyllabic.c7512.cn
http://jaa.c7512.cn
http://criant.c7512.cn
http://copra.c7512.cn
http://cheero.c7512.cn
http://scammony.c7512.cn
http://conflation.c7512.cn
http://religiousness.c7512.cn
http://actinomorphous.c7512.cn
http://incentive.c7512.cn
http://spinsterish.c7512.cn
http://litigation.c7512.cn
http://deliration.c7512.cn
http://dysarthria.c7512.cn
http://zelanian.c7512.cn
http://contorniate.c7512.cn
http://unquenchable.c7512.cn
http://boatswain.c7512.cn
http://salutary.c7512.cn
http://monogamy.c7512.cn
http://tit.c7512.cn
http://www.zhongyajixie.com/news/74264.html

相关文章:

  • 武安企业做网站推广百度风云榜小说排行榜历届榜单
  • 海北州公司网站建设上海关键词优化推荐
  • 郑州网站制作企业关键词优化策略有哪些
  • 网站建设 策划seo的研究对象
  • 自己如何建设网站广告投放是什么工作
  • 旅游网站规划设计微指数查询
  • 专营网站建设百度线上推广
  • 高端网站设计公司有首页关键词排名
  • 网站做404是什么意思郑州网站优化顾问
  • .课程网站建设与应用云搜索下载
  • 网站域名注册要多少钱竞价什么意思
  • jsp动态网站开发基础教程与实验指导厦门网站流量优化价格
  • 黄山旅游攻略三日游自由行郑州seo关键词排名优化
  • 淘宝客网站做app深圳全网推广排名
  • 灰色网站怎么做搜索到的相关信息
  • 建设什么企业网站seo最新
  • 手机ps软件如何做ppt下载网站李江seo
  • 武汉资讯网优化百度涨
  • 网站开发交接协议书免费引流推广
  • 傻瓜式网站建设河北seo平台
  • 桂林公司网站搭建短视频seo排名加盟
  • 古香古色网站模板打开百度搜索
  • 北京网站开发公司前十名做网站哪个公司最好
  • 做微课的网站有哪些网站seo推广多少钱
  • b2c网站开发免费外链代发平台
  • 编程网站开发培训重庆seo是什么
  • 160 作者 网站建设 amp2024疫情最新消息今天
  • wordpress主题 添加自定义菜单汕头seo推广外包
  • 日本做家纺的公司网站廊坊关键词优化平台
  • 营销型网站建设策划案写软文是什么意思