1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- const path = require('path');
- const webpack = require('webpack');
- const vueLoaderConfig = require('./vue-loader.conf');
- const utils = require('./utils');
- const DIST = 'dist';
- process.env.NODE_ENV = process.env.NODE_ENV || 'development';
- const IS_DEV = process.env.NODE_ENV === 'development';
- const definePlugin = new webpack.DefinePlugin({
- 'process.env': {
- NODE_ENV: JSON.stringify(process.env.NODE_ENV),
- DEBUG: IS_DEV ? 'true' : 'false', // whether to log message errors
- },
- });
- function resolve(dir) {
- return path.join(__dirname, '..', dir);
- }
- module.exports = {
- output: {
- path: resolve(DIST),
- publicPath: '/',
- filename: '[name].js',
- },
- resolve: {
- extensions: ['.js', '.vue'],
- alias: {
- src: resolve('src'),
- }
- },
- module: {
- rules: [
- // {
- // test: /\.(js|vue)$/,
- // loader: 'eslint-loader',
- // enforce: 'pre',
- // include: [resolve('src'), resolve('test')],
- // options: {
- // formatter: require('eslint-friendly-formatter')
- // }
- // },
- {
- test: /\.vue$/,
- loader: 'vue-loader',
- options: vueLoaderConfig
- },
- {
- test: /\.js$/,
- loader: 'babel-loader',
- include: [resolve('src'), resolve('test')]
- },
- ].concat(utils.styleLoaders({
- sourceMap: false,
- extract: !IS_DEV,
- })),
- },
- // cheap-module-eval-source-map is faster for development
- devtool: IS_DEV ? '#inline-source-map' : false,
- plugins: [
- definePlugin,
- ],
- };
|