| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 
 | var path = require('path')var config = require('../config')
 var utils = require('./utils')
 var projectRoot = path.resolve(__dirname, '../')
 
 module.exports = {
 entry: {
 app: './src/main.js'
 },
 output: {
 path: config.build.assetsRoot,
 publicPath: config.build.assetsPublicPath,
 filename: '[name].js'
 },
 resolve: {
 extensions: ['', '.js', '.vue'],
 fallback: [path.join(__dirname, '../node_modules')],
 alias: {
 'src': path.resolve(__dirname, '../src'),
 'assets': path.resolve(__dirname, '../src/assets'),
 'components': path.resolve(__dirname, '../src/components')
 }
 },
 resolveLoader: {
 fallback: [path.join(__dirname, '../node_modules')]
 },
 module: {
 preLoaders: [
 {
 test: /\.vue$/,
 loader: 'eslint',
 include: projectRoot,
 exclude: /node_modules/
 },
 {
 test: /\.js$/,
 loader: 'eslint',
 include: projectRoot,
 exclude: /node_modules/
 }
 ],
 loaders: [
 {
 test: /\.vue$/,
 loader: 'vue'
 },
 {
 test: /\.js$/,
 loader: 'babel',
 include: projectRoot,
 
 exclude: new RegExp(`node_modules\\${path.sep}\(\?\!vue-bulma-.*\)`)
 },
 {
 test: /\.json$/,
 loader: 'json'
 },
 {
 test: /\.html$/,
 loader: 'vue-html'
 },
 {
 test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
 loader: 'url',
 query: {
 limit: 10000,
 name: utils.assetsPath('img/[name].[hash:7].[ext]')
 }
 },
 {
 test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
 loader: 'url',
 query: {
 limit: 10000,
 name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
 }
 }
 ],
 
 noParse: [
 
 /handsontable\.(full\.)?js/,
 /plotly\.js/
 ],
 },
 eslint: {
 formatter: require('eslint-friendly-formatter')
 },
 vue: {
 loaders: utils.cssLoaders()
 }
 }
 
 
 |