[英]How to keep a count of how many times a function which returns itself has been called?
[英]Is there a way count how many times an async function is called?
我有從數據鏈接數組上傳文件的功能
我想做的是如果數據鏈接數組包含 3 個文件
const testLinks = 3;
並且async uploadImageData
被觸發了三次我想在uploadImageData
被觸發三次之后console.log
。
我正在考慮進行計數,但每次uploadImageData
被觸發時,我的所有測試都會重新開始計數。
.ts
async uploadImageData(formData: FormData) {
const testLinks = 3;
const uploadlink = answerAtachmentUrl;
const headers = headerLink;
const loading = await this.loadingController.create({
message: 'Uploading Photos and Files...',
});
await loading.present();
this.httpClient.post<any>( uploadlink + this.userToken, formData,
{ 'headers':headers }
).pipe(
finalize(() => { loading.dismiss();})
)
.subscribe(res => {
if (res['success']) {
setTimeout(() => { this.DeleteAllFiles(); }, 5000);
this.presentToastPhoto('Photo sync success.');
} else {
this.presentToastPhoto('Photo upload failed.');
let respFail = JSON.stringify(res);
console.log("respFail", respFail);
}
});
// console.log fires once after count and const testLinks both equal 3
}
“我正在考慮進行計數,但我所有的測試都從每次上傳圖像數據被觸發時開始計數。” 您沒有發布您嘗試過的內容,但您可能沒有將計數器設為全局變量。 你的代碼顯然是一個更大項目的一部分,所以我只是做了這個小測試來證明它可以與異步函數一起使用。 如果它不起作用,請告訴我。
var count=0; async function uploadImageData() { const testLinks = 3; count++; console.log(count); if (count === 3){ console.log('count = 3'); } } uploadImageData(); uploadImageData(); uploadImageData(); uploadImageData();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.