UNPKG

jsmom-file-upload

Version:

文件上传

99 lines (95 loc) 2.34 kB
var path = require("path"); var webpack = require("webpack"); const VueLoaderPlugin = require("vue-loader/lib/plugin"); const NODE_ENV = process.env.NODE_ENV; module.exports = { entry: NODE_ENV == "development" ? ["./src/dev.js"] : ["./src/prod.js"], output: { path: path.resolve(__dirname, "./dist"), publicPath: "/dist/", filename: "main.js", library: "main", libraryTarget: "umd", umdNamedDefine: true, globalObject: "this", }, externals: { "js-md5": { root: "jsMd5", commonjs: "js-md5", commonjs2: "js-md5", amd: "js-md5", }, axios: "axios", }, module: { rules: [ { test: /\.(css|scss)$/, use: ["vue-style-loader", "css-loader", "sass-loader"], }, { test: /\.vue$/, loader: "vue-loader", options: { loaders: {}, // other vue-loader options go here }, }, { test: /\.worker\.js$/, loader: "worker-loader", options: { inline: "no-fallback" }, }, { test: /\.js$/, loader: "babel-loader", exclude: /node_modules/, }, { test: /\.(png|jpg|gif|svg)$/, loader: "file-loader", options: { name: "[name].[ext]?[hash]", }, }, ], }, plugins: [ // make sure to include the plugin for the magic new VueLoaderPlugin(), ], resolve: { alias: { vue$: "vue/dist/vue.esm.js", }, extensions: ["*", ".js", ".vue", ".json"], }, devServer: { historyApiFallback: true, noInfo: true, overlay: true, }, performance: { hints: false, }, devtool: "#eval-source-map", mode: process.env.NODE_ENV === "production" ? "production" : "development", }; if (process.env.NODE_ENV === "production") { module.exports.devtool = "#source-map"; module.exports.optimization = { minimize: true, }; // http://vue-loader.vuejs.org/en/workflow/production.html module.exports.plugins = (module.exports.plugins || []).concat([ new webpack.DefinePlugin({ "process.env": { NODE_ENV: '"production"', }, }), new webpack.LoaderOptionsPlugin({ minimize: true, }), ]); }