Müşteri tarafı kodu için doğru olanı yapıyorsunuz. babelify
müşteriye gönderin.
Sunucu tarafı kodu için babel-cli kullanarak normal bir derleme yapardım
Göre http://babeljs.io/docs/setup/#babel_register , babel-register
bir üretim kullanıma yönelik değildir - kanca öncelikle basit durumlarda kullanılması önerilir gerektirir.
Babel 6+ için
Babel 6'dan itibaren, varsayılan olarak hiçbir dönüşüm dahil edilmemiştir. Öyleyse babel-cli
ve kurarak başlayalım babel-preset-es2015
.
$ npm install --save-dev babel-cli babel-preset-es2015
.babelrc
Dosyanıza bir dönüşüm ekleyin - bu yukarıda indirdiğimiz perst modüldür. Sizin için en uygun olanı görmek için ön ayarların tam listesine bir göz atın .
{
"presets": ["es2015"]
}
Dosyanıza bir build
komut dosyası ekleyin package.json
. Aşağıda src
girdi dosyalarınız ve build
dönüştürülmüş çıktı dosyaları var
"scripts": {
"build": "babel src -d build"
}
O zaman inşa edin!
$ npm run build
Ardından kodunuzu çalıştırın. Bu noktada, build
dizininizdeki dosyaları yürütmek isteyeceksiniz
$ npm start
Babel <= 5 için, sadece gerekli kancayı kullanın.
require("babel/register");
.Es6 , .es , .jsx ve .js uzantılarına sahip düğümün gerektirdiği sonraki tüm dosyalar Babel tarafından dönüştürülecektir. Polyfill da otomatik gereklidir.
Kaynak dosyalarınızı ES6'da tutabilecek, ancak yine de bunları kullanarak çalıştırabileceksiniz. node server.js
Yorumlarınıza göre biraz sorun yaşıyor gibisiniz. Yukarıdaki sarıyla vurgulanan kısma özellikle dikkat edin. İlk dosyanız yalnızca düğümün kendisi tarafından çalıştırılan ES5 olabilir. HerşeySonraki Babel tarafından dönüştürülecek ...
İşte tipik bir kurulum nasıl görünebilir
server.js
require("babel/register");
var app = require("./app.js");
app.js
ateşle!
$ node server.js
require("babel/register");
server.js'mi koydum ve çalıştırdığımdanode server.js
hatayı alıyorum:Unexpected reserved word: import ...
bu yüzden işe yaramadı