2017-04-23 49 views
1

我有一個webpack配置,編譯我所有的es2015沒有問題。它變醜等與uglify結合使用sapack加載器的webpack給出錯誤,否則工作正常

下面是配置:

const webpack = require('webpack'); 
const ExtractTextPlugin = require('extract-text-webpack-plugin'); 
const nodeEnv = process.env.NODE_ENV || 'production'; 

module.exports = { 
    devtool: 'source-map', 
    entry: { 
     filename: './src/index.js' 
    }, 
    // entry: ['./src/index.js', './src/scss/main.scss'], 
    output: { 
     filename: './app/index.min.js' 
    }, 
    module: { 
     loaders: [{ 
      test: /\.js$/, 
      exclude: /node_modules/, 
      loader: 'babel-loader', 
      query: { 
       presets: [ 
        ['es2015', { 'modules': false }] 
       ] 
      } 
     }]//, 
     // rules: [{ 
     //  test: /\.css$/, 
     //  use: ExtractTextPlugin.extract({ 
     //   use: 'css-loader?importLoaders=1', 
     //  }), 
     // }, { 
     //  test: /\.scss$/, 
     //  use: ExtractTextPlugin.extract({ 
     //   fallback: 'style-loader', 
     //   use: ['css-loader', 'sass-loader'], 
     //   publicPath: '/app' 
     //  }) 
     // }] 
    }, 
    plugins: [ 
     new webpack.DefinePlugin({ 
      'proccess.env': { NODE_ENV: JSON.stringify(nodeEnv) } 
     }), 
     // new ExtractTextPlugin({ 
     //  filename: './app/main.css', 
     //  disable: false, 
     //  allChunks: true 
     // }), 
     new webpack.optimize.UglifyJsPlugin({ 
      compress: { warnings: false }, 
      output: { comments: false }, 
      sourceMap: true 
     }) 
    ] 
} 

但是當我取消對插件和裝載機和替換項文件,我從uglifyjs一個錯誤:

ERROR in ./app/index.min.js from UglifyJs 
Invalid assignment [./src/js/modules/requests.js:19,0][./app/index.min.js:2083,38] 

哪是正確的,它不知道如何處理=>函數。但爲什麼額外的裝載機弄亂了裝載機的順序(現在假設這是問題)? 始終是敞開的更好的方法來解決這個問題,或者是一個很好的例子

+0

什麼意思是搞亂了scss? – Dummy

+0

固定,覺得我太累這個東西搞亂;) – flowen

+0

克蒙人/女士。 「亂搞」太寬泛,它可能意味着很多東西,具體是 – Dummy

回答

1

您同時使用module.rulesmodule.loaders(找不到自己)。當webpack看到module.rules時,它完全忽略了module.loaders,這意味着您的.js規則不存在,因此根本不會傳輸JavaScript。 module.loaders僅出於兼容性原因而存在,您應只使用module.rules

module: { 
    rules: [{ 
     test: /\.js$/, 
     exclude: /node_modules/, 
     loader: 'babel-loader', 
     options: { 
      presets: [ 
       ['es2015', { 'modules': false }] 
      ] 
     } 
    }, { 
     test: /\.css$/, 
     use: ExtractTextPlugin.extract({ 
      use: 'css-loader?importLoaders=1', 
     }) 
    }, { 
     test: /\.scss$/, 
     use: ExtractTextPlugin.extract({ 
      fallback: 'style-loader', 
      use: ['css-loader', 'sass-loader'], 
      publicPath: '/app' 
     }) 
    }] 
} 
+0

ahhh,非常感謝sooo! – flowen

相關問題