/** * Created by cephe on 2017/7/8. */ const eslintFormatter = require("react-dev-utils/eslintFormatter"); const webpack = require("webpack"); const paths = require("./paths"); module.exports= { entry: { "common":["moment","pako","g2"], "react":["react","react-dom"], "antd":["antd"], "index.web": [ require.resolve('react-dev-utils/webpackHotDevClient'), require.resolve('react-error-overlay'), paths.devPath + paths.sourcePath + "index.web.js" ], "login.web": [ require.resolve('react-dev-utils/webpackHotDevClient'), require.resolve('react-error-overlay'), paths.devPath + paths.sourcePath + "login.web.js" ] }, output: { path:paths.devPath, filename:"./js/[name].js", publicPath:"/" }, resolve: { extensions: ['.js', '.jsx','.css','.less'], }, module: { rules: [ { test: /\.(js|jsx)$/, exclude: /node_modules/, use: [ { loader: require.resolve("babel-loader"), options: { plugins: [ ], cacheDirectory: true, presets: ['react', 'es2015','stage-1'] } } ] }, { test: /\.(woff|woff2|eot|ttf|svg)$/, use: [ { loader: require.resolve("url-loader"), options: { limit: 10240, name: paths.fontPath + "[name].[hash:8].[ext]" } } ] }, { test: /\.css$/, use: [ { loader: require.resolve("style-loader") }, { loader: require.resolve("css-loader"), options: { importLoaders: 1 } } ] }, { test: /\.less$/, use: [ { loader: require.resolve("style-loader") }, { loader: require.resolve("css-loader") }, { loader: require.resolve("less-loader"), options: { lessOptions:{ modifyVars: {}, javascriptEnabled: true } } } ] } ] }, plugins:[ new webpack.HotModuleReplacementPlugin(), new webpack.optimize.CommonsChunkPlugin({ name: ["antd","react","common",'manifest'], minChunks:Infinity }), new webpack.HashedModuleIdsPlugin() ], devtool:"cheap-module-eval-source-map" };