Rumah > hujung hadapan web > tutorial js > Mengapa Saya Melihat Ralat \'Penolakan Janji Tidak Terkendali\' dalam Sudut 2?

Mengapa Saya Melihat Ralat \'Penolakan Janji Tidak Terkendali\' dalam Sudut 2?

Mary-Kate Olsen
Lepaskan: 2024-11-04 05:58:29
asal
904 orang telah melayarinya

Why Am I Seeing

Menyingkap Penolakan Janji Tidak Terkendali dalam Angular 2

Semasa menavigasi melalui tutorial Angular 2, anda mungkin menghadapi ralat yang menunjukkan "Penolakan Janji Tidak Terkendali. " Ini boleh mengelirukan, terutamanya jika anda tidak biasa dengan konsep itu. Mari kita mendalami apa itu "Penolakan Janji Tidak Terkendali" dan cara menyelesaikannya.

Apakah itu Penolakan Janji Tidak Terkendali?

Janji ialah mekanisme penting dalam JavaScript untuk mengendalikan operasi tak segerak. Apabila janji dibuat, ia boleh diselesaikan (berjaya) atau ditolak (tidak berjaya). Jika janji ditolak tetapi tidak dikendalikan dengan betul, ralat "Penolakan Janji Tidak Terkendali" berlaku.

Dalam kes khusus anda, ralat berkenaan dengan spawn cmd ENOENT, menunjukkan bahawa sistem pengendalian tidak dapat mencari arahan bernama "cmd."

Menyelesaikan Janji Yang Tidak Ditangani Penolakan

Untuk menyelesaikan isu ini, anda perlu memastikan bahawa semua janji dalam kod anda dikendalikan. Ini bermakna setiap janji mesti diikuti oleh sama ada blok .then(...) untuk mengendalikan resolusi yang berjaya atau blok .catch(...) untuk mengendalikan penolakan.

Sebagai contoh, fungsi PTest anda boleh diubah suai untuk memasukkan pengendalian ralat:

var PTest = function () {
    return new Promise(function (resolve, reject) {
        if (somevar === true)
            resolve();
        else
            reject(Error("Operation failed"));
    });
}
Salin selepas log masuk

Selain itu, anda harus memastikan bahawa pengendalian ralat ditulis sebagai rantai dan bukannya pernyataan berasingan. Kod berikut akan menjana ralat "penolakan janji yang tidak dikendalikan" walaupun terdapat tangkapan cuba:

try {
myfunc.then(function () {
     console.log("Promise Resolved");
});
} catch (e) {
     console.log("Promise Rejected");
}
Salin selepas log masuk

Dengan mengikut garis panduan ini, anda boleh mengendalikan penolakan janji dengan berkesan dan menghalang penampilan "Penolakan Janji Tidak Terkendali" kesilapan.

Atas ialah kandungan terperinci Mengapa Saya Melihat Ralat \'Penolakan Janji Tidak Terkendali\' dalam Sudut 2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan