123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- const path = require('path');
- //const webpack = require('webpack');
- const VueLoaderPlugin = require('vue-loader/lib/plugin');
- const clientDir = path.resolve(__dirname, '../client');
- module.exports = {
- entry: [`${clientDir}/main.js`],
- output: {
- publicPath: '/app/',
- },
- module: {
- rules: [
- {
- test: /\.vue$/,
- loader: "vue-loader"
- },
- {
- test: /\.js$/,
- loader: 'babel-loader',
- exclude: /node_modules/,
- query: {
- plugins: [
- 'syntax-dynamic-import',
- 'transform-decorators-legacy',
- 'transform-class-properties',
- // ["component", { "libraryName": "element-ui", "styleLibraryName": `~${clientDir}/theme` } ]
- ]
- }
- },
- {
- test: /\.gif$/,
- loader: "url-loader",
- options: {
- name: "images/[name]-[hash:6].[ext]"
- }
- },
- {
- test: /\.png$/,
- loader: "url-loader",
- options: {
- name: "images/[name]-[hash:6].[ext]"
- }
- },
- {
- test: /\.jpg$/,
- loader: "file-loader",
- options: {
- name: "images/[name]-[hash:6].[ext]"
- }
- },
- {
- test: /\.(ttf|eot|woff|woff2)$/,
- loader: "file-loader",
- options: {
- name: "fonts/[name]-[hash:6].[ext]"
- }
- },
- ]
- },
- plugins: [
- new VueLoaderPlugin(),
- ]
- };
|