JavaScript ရှိ Promise များကို ဆက်တိုက်အသုံးပြုခြင်း

ကျွန်ုပ်တို့တွင် အောက်ပါ Promise တစ်ခု ရှိသည်ဆိုပါစို့။

javascriptlet promise = new Promise(function(resolve, reject) {
  setTimeout(function() {
    resolve('string');
  }, 3000);
});

Promise ပြီးဆုံးသွားသောအခါ ၎င်း၏ရလဒ်ကို console တွင် ထုတ်ပြမည်။

javascriptpromise.then(
  function(result) {
    console.log(result); // 'string' ကို ထုတ်ပြမည်
  }
)

ယခု ရလဒ်ကို ချက်ချင်းမထုတ်ပြဘဲ တစ်နည်းနည်းဖြင့် ပြုပြင်မွမ်းမံပြီး return ဖြင့် ပြန်ပို့ကြည့်ရအောင်။

javascriptpromise.then(
  function(result) {
    return result + '!';
  }
);

ဤသို့ဆိုလျှင် ကျွန်ုပ်တို့၏ then ၏ရလဒ်ကို အခြား then တစ်ခုဖြင့် ထပ်မံလုပ်ဆောင်နိုင်ပြီး ဆက်တိုက်အသုံးပြုမှု ကို ဖန်တီးနိုင်သည်။ ဤနည်းဖြင့် နောက်ထပ်မှ လုပ်ဆောင်ချက်သို့ ယခင် then မှ return ဖြင့် ပြန်ပို့လိုက်သော အရာကို ရရှိမည်ဖြစ်သည်။

javascriptpromise.then(
  function(result) {
    return result + '!';
  }
).then(
  function(result) {
    console.log(result); // 'string!' ကို ထုတ်ပြမည်
  }
);

ဤနည်းဖြင့် မည်မျှရှည်လျားသော ဆက်တိုက်အသုံးပြုမှုကိုမဆို တည်ဆောက်နိုင်သည်။

javascriptpromise.then(
  function(result) {
    return result + '1';
  }
).then(
  function(result) {
    return result + '2';
  }
).then(
  function(result) {
    return result + '3';
  }
).then(
  function(result) {
    console.log(result); // 'string123' ကို ထုတ်ပြမည်
  }
);