微信小程序按顺序同步执行的两种方式

(编辑:jimmy 日期: 2024/11/16 浏览:2)

小程序按顺序执行的两种方式

1.回调函数执行,后一个方法写到前一个的回调函数中从而实现顺序执行,缺点是嵌套太多,代码混乱

2.async-await 同步执行,此方法等待前面方法执行完毕才继续后续执行。代码可读性好

以检查文本安全性为例给出两种不同方式代码以供参考

回调方式

/**
 * 同步检查是否包含敏感词
 */
// async function checkString(content) {
// try {
//  var res = await wx.cloud.callFunction({
//  name: 'checkString',
//  data: {
//   content: content,
//  }
//  });
//  if (res.result.errCode == 0)
//  return true;
//  return false;
// } catch (err) {
//  console.log(err);
//  return false;
// }
// }
 // pubcom: async function (e) {
 // wx.showLoading({
 // title: '加载中',
 // mask: true
 // })
 // var that = this
 // var doc_id = that.data.commentID
 // var content = that.data.comcon
 // var formId = e.detail.formId;
 // if (!content) {
 // return
 // }
 // var isCheck = await common.checkString(content);
 // if (!isCheck) {
 // wx.showToast({
 // title: '含有敏感词',
 // image: "/assets/icon/icon-warning.png",
 // });
 // return
 // }
 //后续代码

async-await

/**
 * 异步检查
 */
function checkString(content,success,fail){
 wx.cloud.callFunction({
 name: 'checkString',
 data: {
  content: content,
 }
 }).then(res => {
 console.log(res);
 if (res.result.errCode == 0)
 success(res);
 }).catch(err => {
 console.error(err);
 fail(err);
 });
}
pubcom: function (e) {
 wx.showLoading({
 title: '加载中',
 mask: true
 })
 var that = this
 
 var content = that.data.comcon
 
 if (!content) {
 return
 }
 common.checkString(content, function (res) { 
 //成功代码
 }, function (err) {
   //失败
 wx.showToast({
 title: '含有敏感词',
 image: "/assets/icon/icon-warning.png",
 });
 return});
 },

总结

以上所述是小编给大家介绍的微信小程序按顺序同步执行的两种方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。