vue-material/build/webpack/dev.js

48 lines
1.3 KiB
JavaScript
Raw Permalink Normal View History

2016-10-13 06:27:58 +00:00
import webpack from 'webpack';
import merge from 'webpack-merge';
import HtmlWebpackPlugin from 'html-webpack-plugin';
2017-02-07 21:24:29 +00:00
import FriendlyErrorsPlugin from 'friendly-errors-webpack-plugin';
2016-10-13 06:27:58 +00:00
import baseWebpackConfig from './base';
import config from '../config';
2016-10-13 06:27:58 +00:00
Object.keys(baseWebpackConfig.entry).forEach((name) => {
2017-02-07 21:24:29 +00:00
baseWebpackConfig.entry[name] = ['./build/server/client', ...[baseWebpackConfig.entry[name]]];
2016-10-13 06:27:58 +00:00
});
export default merge(baseWebpackConfig, {
devtool: '#cheap-module-eval-source-map',
2017-02-07 22:49:51 +00:00
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
css: 'vue-style-loader!css-loader',
scss: 'vue-style-loader!css-loader!sass-loader'
}
}
},
{
test: /\.css$/,
use: ['vue-style-loader', 'css-loader']
},
{
test: /\.scss$/,
use: ['vue-style-loader', 'css-loader', 'sass-loader']
}
]
},
2016-10-13 06:27:58 +00:00
plugins: [
new webpack.WatchIgnorePlugin([config.nodePath]),
2016-10-13 06:27:58 +00:00
new webpack.HotModuleReplacementPlugin(),
2017-02-07 21:24:29 +00:00
new webpack.NoEmitOnErrorsPlugin(),
2016-10-13 06:27:58 +00:00
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'docs/index.html',
inject: true
2017-02-07 21:24:29 +00:00
}),
new FriendlyErrorsPlugin()
2016-10-13 06:27:58 +00:00
]
});