Pertanyaan yang diberi tag «promise»

Janji adalah taktik untuk komputasi yang ditangguhkan, cocok untuk beberapa gaya konkurensi: konkurensi untai dan loop acara untuk komputasi lokal, dan pesan jarak jauh yang sinkron dan asinkron. Janji merupakan hasil akhirnya dari operasi asinkron. Cara utama bekerja dengan janji adalah melalui metode yang mendaftarkan transformasi dari nilai akhirnya atau alasan kegagalan janji menjadi janji baru.

4
Mengapa menyetel properti CSS menggunakan Promise.kemudian tidak benar-benar terjadi di blok itu?
Silakan coba dan jalankan cuplikan berikut, lalu klik kotaknya. const box = document.querySelector('.box') box.addEventListener('click', e => { if (!box.style.transform) { box.style.transform = 'translateX(100px)' new Promise(resolve => { setTimeout(() => { box.style.transition = 'none' box.style.transform = '' resolve('Transition complete') }, 2000) }).then(() => { box.style.transition = '' }) } }) .box …

2
Bagaimana cara mengantri mikrotask jika browser tidak mendukung Janji asli?
Lebih baik menulis kode yang tidak bergantung pada waktu panggilan balik langsung (seperti microtasks vs macrotasks), tetapi mari kita kesampingkan hal itu untuk sementara waktu. setTimeoutmengantri macrotask, yang, setidaknya, menunggu untuk memulai sampai semua mikrotasks (dan mikrotasks yang mereka hasilkan) selesai. Ini sebuah contoh: console.log('Macrotask queued'); setTimeout(function() { console.log('Macrotask running'); …

3
Menemukan sumber penolakan janji yang tidak tertangani: TypeError: Siklus rantai terdeteksi untuk janji
Saya mencoba mencari sumber penolakan yang tidak ditangani dari Janji di Node.js Saya sudah mencoba memutakhirkan ke Node versi 12, menggunakan --async-stack-tracesopsi, dan mendengarkannya menggunakan: process.on("unhandledRejection",( reason, promise ) => { console.log(reason); console.log(promise); }); Tapi saya masih tidak melihat jejak tumpukan membantu untuk membantu saya menemukan pelakunya! UnhandledPromiseRejectionWarning: TypeError: Chaining …

1
Dengan Janji, mengapa browser mengembalikan penolakan dua kali tetapi tidak menyelesaikan dua kali?
Saya mengalami kesulitan memahami javaScript promises. Saya menulis kode berikut: var p = new Promise(function(resolve,reject){ reject(Error("hello world")); }); setTimeout(()=>p.catch(e=>console.log(e)),5000); Saya segera melihat ini di konsol pengembang Chrome saya: Tetapi setelah saya menunggu 5 detik, pesan secara otomatis berubah menjadi hitam seperti gambar ini: Saya belum pernah melihat perilaku ini sebelumnya …

1
Bagaimana saya bisa membatalkan janji di Raku?
Saya tahu saya bisa menjadwalkan Promiseuntuk disimpan dalam jumlah waktu tertentu my $promise = Promise.in($seconds); tetapi bagaimana saya bisa menjadwalkannya untuk dilanggar? Secara khusus, saya memikirkan janji yang akan "habis", sehingga masih ada waktu untuk dijaga atau kalau tidak akan gagal. Saya bisa melakukan ini dengan yang lain Promise, seperti: …
9 promise  raku 
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.