vite.config.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import { defineConfig } from "vite";
  2. import vue from "@vitejs/plugin-vue";
  3. import vueJsx from "@vitejs/plugin-vue-jsx";
  4. import Components from "unplugin-vue-components/vite";
  5. import { VantResolver } from "unplugin-vue-components/resolvers";
  6. import postcssPxtorem from "postcss-pxtorem";
  7. import { createStyleImportPlugin } from "vite-plugin-style-import";
  8. import legacy from "@vitejs/plugin-legacy";
  9. // https://vitejs.dev/config/
  10. export default defineConfig({
  11. plugins: [
  12. vue(),
  13. vueJsx(),
  14. legacy({
  15. targets: ["> 0.25%, not dead"],
  16. ignoreBrowserslistConfig: true,
  17. }),
  18. Components({
  19. resolvers: [VantResolver()],
  20. }),
  21. createStyleImportPlugin({
  22. libs: [
  23. {
  24. libraryName: "vant",
  25. esModule: true,
  26. resolveStyle: (name) => `../es/${name}/style/index`,
  27. },
  28. ],
  29. }),
  30. ],
  31. css: {
  32. postcss: {
  33. plugins: [
  34. postcssPxtorem({
  35. rootValue: 37.5, // 1rem的大小
  36. propList: ["*"], // 需要转换的属性,这里选择全部都进行转换
  37. }),
  38. ],
  39. },
  40. },
  41. server: {
  42. port: 5050,
  43. open: true,
  44. },
  45. build: {
  46. terserOptions: {
  47. //打包后移除console和注释
  48. compress: {
  49. drop_console: true,
  50. drop_debugger: true,
  51. },
  52. },
  53. },
  54. });