vue.config.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. const path = require("path");
  2. const HardSourceWebpackPlugin = require("hard-source-webpack-plugin");
  3. const AutoDllPlugin = require("autodll-webpack-plugin");
  4. function resolve(dir) {
  5. return path.join(__dirname, dir);
  6. }
  7. module.exports = {
  8. assetsDir: "./h5",
  9. publicPath: "./",
  10. outputDir: "cordova/www",
  11. configureWebpack: config => {
  12. Object.assign(config.resolve.alias, {
  13. "@utils": resolve("src/utils"),
  14. "@libs": resolve("src/libs"),
  15. "@api": resolve("src/api"),
  16. "@components": resolve("src/components"),
  17. "@assets": resolve("src/assets"),
  18. "@css": resolve("src/assets/css"),
  19. "@images": resolve("src/assets/images"),
  20. "@views": resolve("src/views"),
  21. "@mixins": resolve("src/mixins")
  22. });
  23. if (process.env.NODE_ENV !== "production") {
  24. config.plugins.push(
  25. new HardSourceWebpackPlugin(),
  26. new AutoDllPlugin({
  27. inject: true,
  28. debug: true,
  29. filename: "[name]_[hash].js",
  30. path: "./dll" + Date.parse(new Date()),
  31. entry: {
  32. vendor_vue: ["vue", "vuex", "vue-router"],
  33. vendor_ui: ["vue-awesome-swiper", "vue-ydui"],
  34. vendor_tools: ["axios", "core-js"]
  35. }
  36. })
  37. );
  38. }
  39. },
  40. chainWebpack: config => {
  41. config.plugin("html").tap(args => {
  42. args[0].VUE_APP_NAME = "美天旺";
  43. return args;
  44. });
  45. }
  46. };