小程序按順序執行的兩種方式
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});
},
總結
以上所述是小編給大家介紹的微信小程序按順序同步執行的兩種方式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。