2017-10-08 1285 views
0

我正在編譯我的客戶端,使用帶有env,stage-0和反應預設的webpack。它工作的很好,但現在我開始研究服務器端渲染,所以我必須在我的服務器文件中使用一些es6和jsx語法。我正在使用與webpack完全相同的預設編譯它,但是在運行編譯後的文件後,它會在服務器文件中導入的客戶端文件之一中引發錯誤。這裏是我的packege.json所以你可以看到我的命令:GitHub(尋找「建設:s」命令)使用babel-cli編譯的文件會拋出一個錯誤

這是錯誤進出口運行服務器上的文件後獲得:command line

我使用巴貝爾-CLI錯誤?編輯: 我在這裏真正的泡菜。我嘗試了不同的方法。我用babel-cli將整個客戶端編譯到指定的文件夾,然後從該文件夾中導入服務器文件導入。但是,這只是給了我一堆錯誤,如「無法找到filename.scss」..... 有誰知道如何解決這個問題?

回答

0

Babel不會爲您處理相關性。

babel ./server/app.js --out-file ./server/app.compiled.js --presets=env,stage-0,react 

專門只編譯什麼是app.js。由於app.js導入其他東西,這些其他文件尚未編譯。

通常你想擁有它的原始源一個文件夾,所以我會做

src/ 
    server/ 
    client/ 

通常你會想要做的更像

babel ./src --out-dir ./lib --presets=env,stage-0,react 

,然後執行node ./lib/server/app.js

+0

感謝您的回答。我要檢查一下;) – Kreha6

+0

結果是一樣的。我改變了我的腳本(推到我的回購)。我應該以這種方式編譯我的整個項目嗎?以前我試圖使用單獨的webpack.config文件編譯我的服務器,但每次運行「webpack」時它都會崩潰.... – Kreha6

+0

爲我的客戶端創建一個完全獨立的編譯副本只是爲了讓服務器呈現它是明智的嗎? – Kreha6

相關問題