mirror of
https://github.com/Hopiu/vue-material.git
synced 2026-03-16 22:10:27 +00:00
69 lines
1.4 KiB
JavaScript
69 lines
1.4 KiB
JavaScript
import path from 'path';
|
|
import webpack from 'webpack';
|
|
import eslintFormatter from 'eslint-friendly-formatter';
|
|
import config from '../config';
|
|
|
|
const resolvePath = (dir) => {
|
|
return path.resolve(__dirname, '..', '..', dir);
|
|
};
|
|
|
|
export default {
|
|
entry: {
|
|
docs: './docs/src/index.js'
|
|
},
|
|
output: {
|
|
path: config.rootPath,
|
|
publicPath: config.publicPath,
|
|
filename: '[name].js'
|
|
},
|
|
resolve: {
|
|
extensions: ['.js', '.vue', '.json'],
|
|
alias: {
|
|
assets: resolvePath('docs/src/assets')
|
|
}
|
|
},
|
|
module: {
|
|
rules: [
|
|
{
|
|
test: /\.(js|vue)$/,
|
|
loader: 'eslint-loader',
|
|
enforce: 'pre',
|
|
include: [
|
|
resolvePath('build'),
|
|
resolvePath('src'),
|
|
resolvePath('docs')
|
|
],
|
|
options: {
|
|
fix: true,
|
|
formatter: eslintFormatter
|
|
}
|
|
},
|
|
{
|
|
test: /\.js$/,
|
|
loader: 'babel-loader',
|
|
include: [
|
|
resolvePath('build'),
|
|
resolvePath('src'),
|
|
resolvePath('docs')
|
|
]
|
|
},
|
|
{
|
|
test: /\.theme$/,
|
|
use: ['raw-loader', 'sass-loader']
|
|
},
|
|
{
|
|
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
|
|
loader: 'url-loader',
|
|
query: {
|
|
limit: 10000,
|
|
name: '/assets/[name].[hash:8].[ext]'
|
|
}
|
|
}
|
|
]
|
|
},
|
|
plugins: [
|
|
new webpack.DefinePlugin({
|
|
'process.env': config.env
|
|
})
|
|
]
|
|
};
|