xys-monitor
Version:
A project named xys-monitor
49 lines (45 loc) • 1.33 kB
JavaScript
var path = require('path')
var fs = require('fs')
var config = require('./config')
var utils = require('./utils')
var webpack = require('webpack')
var merge = require('webpack-merge')
var baseWebpackConfig = require('./webpack.base.conf')
var ExtractTextPlugin = require('extract-text-webpack-plugin')
var modules = {}
var cPath = path.join(__dirname, '../src/plugin')
var files = fs.readdirSync(cPath)
if (files) {
files.forEach(function (name) {
var p = path.join(cPath, name)
name = name.replace(/\..+$/g,"");
modules[name] = p
})
}
var webpackConfig = merge(baseWebpackConfig, {
entry: modules,
module: {
rules: utils.styleLoaders({
sourceMap: !config.build.isProduction,
extract: {
publicPath: '../'
}
})
},
devtool: false,
output: {
path: path.resolve(__dirname),
filename: utils.assetsPath('../plugin/[name]/index.js'),
library: ['[name]'],
libraryTarget: 'umd'
},
plugins: [
// extract css into its own file
new ExtractTextPlugin(utils.assetsPath('[name]/style.css'))
]
})
//js压缩
if( config.build.isProduction ) {
webpackConfig.plugins.push(new webpack.optimize.UglifyJsPlugin({compress: {warnings : false,},output: {comments: false}}))
}
module.exports = webpackConfig