Rumah > Soal Jawab > teks badan
Gunakan Promise.all([p1, p2]) untuk mengendalikan dua fungsi janji Kedua-dua fungsi menggunakan mongoose secara dalaman untuk mengendalikan pangkalan data.
Jika p1 ditolak dan p2 diselesaikan.
Soalan saya ialah, p2 sebenarnya telah menjalankan operasi pada pangkalan data Adakah itu benar?
Rasanya seperti isu transaksi mongoose.
为情所困2017-06-15 09:24:14
Promise.all diselesaikan apabila semua iterable yang diberikan lengkap, atau menolak apabila mana-mana janji gagal.
Jika mana-mana janji diluluskan yang menolak, semua nilai Janji akan gagal serta-merta, membuang semua janji lain jika ia tidak diselesaikan. Jika lulus mana-mana tatasusunan kosong, kaedah ini akan selesai serta-merta.
var p0 = new Promise((resolve, reject) => {
setTimeout(() => {
console.log(1)
}, 100);
});
var p1 = Promise.resolve(3);
var p2 = 1337;
var p3 = new Promise((resolve, reject) => {
setTimeout(reject, 100, "foo");
});
var p4 = new Promise((resolve, reject) => {
setTimeout(() => {
console.log(2)
}, 100);
});
var p = Promise.all([p0, p1, p2, p3, p4]).then(values => {
console.log(values);
}, values => {
console.log(values) // foo
}); // 1 2
1) Setiap janji dalam janji semua akan dilaksanakan
2) Pada masa ini, status p menjadi ditolak
習慣沉默2017-06-15 09:24:14
Untuk situasi anda, saya kebetulan menulis pakej, https://github.com/zaaack/mon... Ia sepatutnya dapat memenuhi keperluan anda