webpack.config.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. const path = require('path');
  2. const webpackDevServer = require('webpack-dev-server');
  3. const VueLoaderPlugin = require('vue-loader/lib/plugin');
  4. const webpack = require('webpack');
  5. module.exports = {
  6. mode: "development",
  7. entry: {
  8. "main":"./ClientApp/src/main.js"
  9. },
  10. output: {
  11. path: path.join(__dirname, "/wwwroot"),
  12. filename: "[name].js",
  13. publicPath: "/"
  14. },
  15. devServer: {
  16. contentBase: "/",
  17. hot: true
  18. //hotOnly: true
  19. },
  20. module: {
  21. rules: [
  22. { test: /\.vue$/, use: 'vue-loader' },
  23. { test: /\.js$/, include: /ContestApp/, use: 'babel-loader' },
  24. { test: /\.css$/, use: ["vue-style-loader","css-loader"] },
  25. { test: /\.(png|jpg|jpeg|gif|svg)$/, use: 'url-loader?limit=25000' },
  26. { test: /\.(eot|svg|ttf|woff|woff2)$/, loader: 'file-loader' },
  27. { test: /\.less$/, use: [{ loader: "style-loader" }, { loader: "css-loader" }, { loader: "less-loader", options: { javascriptEnabled: true } }] }
  28. ]
  29. },
  30. resolve: {
  31. alias: {
  32. "@": path.resolve(__dirname, './ClientApp/src')
  33. }
  34. },
  35. plugins: [
  36. new VueLoaderPlugin(),
  37. new webpack.HotModuleReplacementPlugin()
  38. ]
  39. }