Rumah  >  Artikel  >  hujung hadapan web  >  Bolehkah Janji ECMAScript 6 Dibatalkan?

Bolehkah Janji ECMAScript 6 Dibatalkan?

Susan Sarandon
Susan Sarandonasal
2024-10-25 05:31:29746semak imbas

Can ECMAScript 6 Promises Be Cancelled?

Membatalkan ECMAScript 6 Promise Chains

Adakah terdapat cara untuk mengalih keluar .then daripada contoh JavaScript Promise?

ECMAscript 6 Promises tidak boleh dibatalkan secara lalai. Walaupun perbincangan berterusan, tiada penyelesaian rasmi dalam ES6.

Alternatif:

  • Subkelas: Mencipta pelaksanaan Promise anda sendiri membolehkan pembatalan, tetapi pelaksanaannya mungkin tidak boleh dipercayai.
  • Pelaksanaan Userland Promise: Perpustakaan pihak ketiga seperti janji boleh batal dan janji pembatalan menawarkan Janji boleh dibatalkan.

Penyelesaian Semasa untuk Menyahsekat Ujian:

Laksanakan bendera cancelTest tersuai dalam rangka kerja ujian yang membuat tinjauan untuk permintaan pembatalan. Apabila tamat masa berlaku, tetapkan cancelTest kepada benar dan panggil assert.fail() untuk menandakan ujian sebagai gagal.

Kemas Kini Selanjutnya:

Selepas menyelesaikan isu awal ( ralat tidak ditangkap semasa fn.call()), pernyataan then() tidak dipanggil kerana ralat tidak ditangkap dalam fungsi ujian itu sendiri. Dengan menangkap ralat, janji ujian boleh diselesaikan dengan baik, membolehkan ujian selesai dan pernyataan then() dilaksanakan.

Atas ialah kandungan terperinci Bolehkah Janji ECMAScript 6 Dibatalkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn