UNPKG

@t2ee/cookieman

Version:
111 lines (107 loc) 2.84 kB
const path = require('path'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); const webpack = require('webpack'); const HOST = process.env.HOST || '127.0.0.1'; const REMOTE = 'http://192.168.1.165:24880'; const PORT = process.env.PORT || '8889'; module.exports = { plugins: [ new webpack.HotModuleReplacementPlugin(), new HtmlWebpackPlugin({ template: path.resolve(__dirname, 'src/index.html'), }), ], resolve: { root: path.resolve(__dirname, 'src'), extensions: ['', '.js', '.jsx'], }, sassLoader: { includePaths: [ path.resolve(__dirname, 'src/styles'), ], }, devtool: 'source-map', cache: true, module: { loaders: [ { test: /\.scss$/, loaders: [ 'style-loader', 'css-loader?modules&' + 'importLoaders=1&' + 'localIdentName=[name]__[local]___[hash:base64:5]!sass', ], }, { test: /\.css$/, loader: 'style!css!sass', }, { test: /\.jsx?$/, exclude: /(node_modules|bower_components)/, loaders: ['react-hot', 'babel-loader'], }, { test: /\.svg$/, loader: 'url?limit=65000&mimetype=image/svg+xml&name=public/fonts/[name].[ext]', }, { test: /\.woff$/, loader: 'url?limit=65000&mimetype=application/font-woff&name=public/fonts/[name].[ext]', }, { test: /\.woff2$/, loader: 'url?limit=65000&mimetype=application/font-woff2&name=public/fonts/[name].[ext]', }, { test: /\.[ot]tf$/, loader: 'url?limit=65000&mimetype=application/octet-stream&name=public/fonts/[name].[ext]', }, { test: /\.eot$/, loader: 'url?limit=65000&mimetype=application/vnd.ms-fontobject&name=public/fonts/[name].[ext]', }, ], }, entry: [ 'babel-polyfill', `webpack-dev-server/client?http://${HOST}:${PORT}`, 'webpack/hot/only-dev-server', path.resolve(__dirname, 'src/index.jsx'), ], devServer: { contentBase: './www', quiet: true, historyApiFallback: true, hot: true, port: PORT, host: HOST, noInfo: false, publicPath: '/www/', headers: { 'Access-Control-Allow-Origin': '*', }, proxy: { '/*': { target: REMOTE, secure: false, bypass(req) { console.log(req.path); if (req.path === '/') { return '/www/index.html'; } else if (req.path.substr(0, 4) === '/www') { return true; } } }, }, }, output: { path: path.resolve(__dirname, 'www'), publicPath: '/www/', filename: 'app.js', }, };