最近項(xiàng)目業(yè)務(wù)上有個(gè)需求,用戶(hù)可以批量下訂單,但每個(gè)訂單都有一個(gè)保價(jià)費(fèi),手續(xù)費(fèi)需要根據(jù)訂單的價(jià)值由后臺(tái)的模型算出來(lái),然后下單的時(shí)候每個(gè)訂單都需要帶上這個(gè)保價(jià)費(fèi),所以其實(shí)在批量下單前,每個(gè)訂單都需要執(zhí)行一次后臺(tái)接口,不要問(wèn)我為什么不將訂單都傳給后臺(tái),讓后臺(tái)去算,現(xiàn)在的 業(yè)務(wù)方案是要前端每一個(gè)訂單都請(qǐng)求一次接口去算出來(lái),然后再批量去下單。

那就寫(xiě)吧,其實(shí)就是調(diào)用批量下單的接口前,要先每個(gè)頂你單調(diào)一次查保價(jià)費(fèi)的接口,想著很簡(jiǎn)單,將保存多選數(shù)據(jù)的數(shù)組遍歷,每次執(zhí)行一次查保價(jià)費(fèi)的接口就好,然后在遍歷完后再調(diào)用下單接口
代碼就這樣寫(xiě)吧
`const $this = this
// 選中多個(gè)訂單,更新保價(jià)費(fèi)
// multipleSelection 批量訂單的選中數(shù)組
this.multipleSelection.forEach(async(item, index) => {
console.log('第' + index + '個(gè)訂單開(kāi)始查詢(xún)')
//將查到的保價(jià)費(fèi),賦值到insuredValue getComputationCost為查保價(jià)費(fèi)接口
$this.multipleSelection[index].insuredValue = await getComputationCost({
value: item.declaredValue,
goodsTypeCode: item.goodsTypeCode,
}) || 100
console.log('第' + index + '個(gè)訂單查詢(xún)完成')
})
console.log('111', '開(kāi)始下單')
const param = {
orders: this.multipleSelection,
}
//批量下單
const res = await batchAdd(param)
console.log('222', '下單完成')
if (res.code === RESPONSE_SUCCESS) {
this.$message({
message: '下單成功',
type: 'success',
})
} else {
this.$message.error(res.msg)
}`
文章名稱(chēng):詳解vue中多個(gè)有順序要求的異步操作處理-創(chuàng)新互聯(lián)
文章出自:http://chinadenli.net/article22/hhhjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、ChatGPT、App設(shè)計(jì)、云服務(wù)器、靜態(tài)網(wǎng)站、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容