Jika Anda sudah terhubung ke database, once
acara tidak akan menyala lagi. Basis data sudah terhubung untuk seluruh proses NodeJs saat terhubung secara global (di luar fungsi).
Panggilan ke mongoose.connect('mongodb://localhost/test');
membuat koneksi dan membukanya.
Jadi, alih-alih membukanya pada setiap panggilan fungsi (yang akan menjadi cara yang tidak efisien untuk berinteraksi dengan MongoDB) connect
segera ketika aplikasi NodeJs dimulai, dan pertimbangkan bahwa akan ada periode di mana koneksi mungkin tidak tersedia (karena async), atau tidak memulai aplikasi (listen
) hingga koneksi selesai (atau dengan batas waktu). Dengan Mongoose, hingga koneksi dibuat, semua perintah di-buffer (tapi itu mungkin bukan perilaku yang Anda inginkan). Anda dapat menggunakan open
acara jika Anda ingin tahu kapan koneksi selesai.
Koneksi ditemukan di sini:mongoose.connection
jika Anda menggunakan connect
berfungsi untuk membuat koneksi.
Setelah koneksi dibuka, Anda dapat menggunakannya dari popSingleData
fungsi tanpa menggunakan once
acara dan panggilan balik. Ada kolam koneksi yang dipelihara secara otomatis.
Untuk lebih lanjut tentang koneksi, baca di sini .