Müşteri tarafı kodu için doğru olanı yapıyorsunuz. babelifymüş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-registerbir ü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-clive kurarak başlayalım babel-preset-es2015.
$ npm install --save-dev babel-cli babel-preset-es2015
.babelrcDosyanı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 buildkomut dosyası ekleyin package.json. Aşağıda srcgirdi dosyalarınız ve builddö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, builddizininizdeki 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.jshatayı alıyorum:Unexpected reserved word: import ...bu yüzden işe yaramadı