import { defineConfig } from 'vite' import reactRefresh from '@vitejs/plugin-react-refresh' import { getThemeVariables } from "antd/dist/theme"; import path from "path"; import postcsspxtoviewport from 'postcss-px-to-viewport' import fs from "fs"; // https://vitejs.dev/config/ export default defineConfig({ plugins: [reactRefresh()], css: { postcss: { plugins: [ postcsspxtoviewport({ unitToConvert: 'px', // 要转化的单位 viewportWidth: 750, // UI设计稿的宽度 unitPrecision: 4, // 转换后的精度,即小数点位数 propList: ['*'], // 指定转换的css属性的单位,*代表全部css属性的单位都进行转换 viewportUnit: 'vw', // 指定需要转换成的视窗单位,默认vw fontViewportUnit: 'vw', // 指定字体需要转换成的视窗单位,默认vw selectorBlackList: ['ignore-'], // 指定不转换为视窗单位的类名, minPixelValue: 1, // 默认值1,小于或等于1px则不进行转换 mediaQuery: true, // 是否在媒体查询的css代码中也进行转换,默认false replace: true, // 是否转换后直接更换属性值 // exclude: [/node_modules/], // 设置忽略文件,用正则做目录名匹配 exclude: [], landscape: false // 是否处理横屏情况 }) ] }, preprocessorOptions: { // CSS 预处理器的配置 less: { // less-loader 中开启 javascriptEnabled javascriptEnabled: true, // 使用 less 的 modifyVar 来覆盖 less 变量 modifyVars: { // 配置暗黑主题 ...getThemeVariables({ dark: false }), ...{ "primary-color": "#1DA57A", "link-color": "#1DA57A", "border-radius-base": "2px" } } } } }, // 设置包引入的别名 resolve: { alias: [{ find: /^~/, replacement: path.resolve(__dirname, "src") }] }, server: { host: "nbjk1-h5.zzxcx.net", port: 443, https: { key: fs.readFileSync("./cert/nbjk-h5.zzxcx.net.key"), cert: fs.readFileSync("./cert/nbjk-h5.zzxcx.net.pem"), }, // proxy: { // '/api': { // target: 'http://jsonplaceholder.typicode.com/', // changeOrigin: true, // rewrite: (path: string) => path.replace(/^\/api/, '') // } // } } })