2017-06-05 143 views
1

我希望能夠在我的webpack.config中使用es6導入和導出默認值。如果我這樣運行我的webpack。在webpack.config中使用ES6導入和導出默認值

webpack.config.js

"webpack": "cross-env NODE_ENV=development webpack-dev-server --config webpack.config.js" 

我得到whick有望錯誤SyntaxError: Unexpected token import。然後,我發現其他問題的解決方案似乎適用於很多人。將文件重命名爲webpack.config.babel.js幷包含babel-register。我想, webpack.config.babel.js

"webpack": "cross-env NODE_ENV=development node -r babel-register node_modules/.bin/webpack-dev-server --config=webpack.config.babel.js" 

,但現在我得到這個錯誤

basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 
      ^^^^^^^ 
SyntaxError: missing) after argument list 

我試着用巴貝爾節點和更大量的組合巴貝爾註冊,但似乎沒有上班。我在Windows 10.我該怎麼做?

回答

2

嘗試的WebPack直接運行,而無需babel-register

"webpack": "cross-env NODE_ENV=development node_modules/.bin/webpack-dev-server --config=webpack.config.babel.js" 

此外,請確保您的.babelrc文件,你有babel-plugin-transform-es2015-modules-commonjs插件,或者如果您使用的es2015預設的modules選項設置爲true。如果你不想通天(使一個產品包時爲例)transpile在其他情況下的模塊,你可以告訴babel-loader不使用.babelrc和手工指定預設:

{ 
    test: /\.js$/, 
    exclude: /node_modules/, 
    loader: 'babel-loader', 
    options: { 
    babelrc: false, 
    presets: [ 
     ['latest', { 
     modules: false, 
     }], 
    ], 
    }, 
}, 
+0

感謝。它現在有效,但我又遇到了另一個問題。我的HMR/React熱加載程序已停止注入更改。我必須手動刷新頁面才能看到更改。這是如何相關的?我使用服務器端渲染。 –