Onur Dayıbaşı
Jun 5, 2018 · 2 min read

Node.JS’de modüle yüklerken kullandığımız require yerine bazı yerlerde import’un kullanıldığını görebilirsiniz. Bu konuyu anlatan bir çok yazı mevcut zaten… Bu yazımda ise 2 yöntemi nasıl kullanabileceğimizi anlatacağım.

npm install <package-name> — -save

dendiğinde bu sizin node_modules altında paketi çekiyor. Bu paketin yapısında farklılıklar olsada hepsinin içerisinde kesinlikle package.json dosyası bulunuyor.

Package dosyasının içerisinde ise önemli olan main dosyasında hangi “js” dosyasının çalıştırılacağı mevcut.

Eski usul yöntemde..

  • module.export

Yeni yöntemde ise..

  • exports.default

normalda aşağıdaki 2 kodda aynı module erişimi sağlar.

const parse = require(‘emailjs-mime-parser’).default;
import parse from ‘emailjs-mime-parser’;

Ama import kodunu Node.js desteklemediğinden şu şekilde bir hata ile karşılaşırız.

SyntaxError: Unexpected token import

Import’un çalışabilmesi için babel kullanarak mevcut importları dinamik arka planda require çevirmesi sağlanır. Bu yöntem import => async , require => sync dönüştürür.

npm install babel-register babel-preset-env --save-dev

Bunun için module load sırasında oluşan kod ovverride edilmesi gerekir. Bizim ana kodumuzun olduğu index.js önüne birde pre_index.js gibi bir js dosyası daha oluşturmamız gerekir. Örneğin aşağıdaki gibi..

Cloud And Servers

AWS, Azure, OpenStack

Onur Dayıbaşı

Written by

Senior Frontend Developer at Thundra

Cloud And Servers

AWS, Azure, OpenStack

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade