webpack.base.config.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. const path = require("path");
  2. const webpack = require("webpack");
  3. const VueLoaderPlugin = require('vue-loader/lib/plugin');
  4. module.exports = {
  5. entry: ["./client/main.js"],
  6. output: {
  7. path: path.resolve(__dirname, "..", "server", "public"),
  8. publicPath: "/",
  9. filename: "bundle.js"
  10. },
  11. module: {
  12. rules: [
  13. // это будет применяться к файлам `.js`
  14. // А ТАКЖЕ к секциям `<script>` внутри файлов `.vue`
  15. {
  16. test: /\.js$/,
  17. loader: 'babel-loader'
  18. },
  19. // это будет применяться к файлам `.css`
  20. // А ТАКЖЕ к секциям `<style>` внутри файлов `.vue`
  21. {
  22. test: /\.css$/,
  23. use: [
  24. 'vue-style-loader',
  25. 'css-loader'
  26. ]
  27. },
  28. {
  29. test: /\.gif$/,
  30. loader: "url-loader",
  31. options: {
  32. name: "images/[name]-[hash:6].[ext]",
  33. limit: 10000
  34. }
  35. },
  36. {
  37. test: /\.png$/,
  38. loader: "url-loader",
  39. options: {
  40. name: "images/[name]-[hash:6].[ext]",
  41. limit: 10000
  42. }
  43. },
  44. {
  45. test: /\.jpg$/,
  46. loader: "file-loader",
  47. options: {
  48. name: "images/[name]-[hash:6].[ext]"
  49. }
  50. },
  51. ]
  52. },
  53. plugins: [
  54. new VueLoaderPlugin()
  55. ]
  56. };