node.js: module.exports ve exports arasındaki fark
Bu yazıda module.exports ve exports arasındaki farkı inceleyeceğiz.
Eğer node.js kullanıyorsanız, aşağıdaki gibi bir senaryo size tanıdık gelecektir.
kitap.js:
exports.baslik = 'Kırmızı Başlıklı Kız'
okuyucu.js:
var kitap = require('./kitap'); console.log(kitap.baslik); // Konsol çıktısı : 'Kırmızı Başlıklı Kız'
Yukarıda; ‘kitap.js‘ içindeki baslik özelliğine exports sayesinde erişebiliyoruz. Ancak bu yaklaşımda her zaman metot veya özellik çağırmamız gerekiyor. Peki exports özelliğine kendi nesnemizi nasıl aktarırız?
Böyle bir durumda ‘module.exports‘ özelliğini kullanırız.
kitap.js:
module.exports = 'Kırmızı Başlıklı Kız'
okuyucu.js:
var kitap = require('./kitap'); console.log(kitap); // Konsol çıktısı : 'Kırmızı Başlıklı Kız'
Yukarıda; Herhangi bir metot veya özellik çağırmayıp, direk kitap değişkenine ulaştık ve istediğimiz gibi dönüş aldık. Bazı durumlarda bu yöntemi kullanmak zorunda kalabilirsiniz.