71 lines
1.5 KiB
JavaScript
71 lines
1.5 KiB
JavaScript
// Plugins
|
||
import Components from 'unplugin-vue-components/vite'
|
||
import Vue from '@vitejs/plugin-vue'
|
||
import Vuetify, { transformAssetUrls } from 'vite-plugin-vuetify'
|
||
import ViteFonts from 'unplugin-fonts/vite'
|
||
|
||
// Utilities
|
||
import { defineConfig } from 'vite'
|
||
import { fileURLToPath, URL } from 'node:url'
|
||
|
||
// https://vitejs.dev/config/
|
||
export default defineConfig({
|
||
plugins: [
|
||
Vue({
|
||
template: { transformAssetUrls },
|
||
}),
|
||
// https://github.com/vuetifyjs/vuetify-loader/tree/master/packages/vite-plugin#readme
|
||
Vuetify(),
|
||
Components(),
|
||
ViteFonts({
|
||
google: {
|
||
families: [{
|
||
name: 'Roboto',
|
||
styles: 'wght@100;300;400;500;700;900',
|
||
}],
|
||
},
|
||
}),
|
||
],
|
||
optimizeDeps: {
|
||
exclude: ['vuetify'],
|
||
},
|
||
define: { 'process.env': {} },
|
||
resolve: {
|
||
alias: {
|
||
'@': fileURLToPath(new URL('./src', import.meta.url)),
|
||
},
|
||
extensions: [
|
||
'.js',
|
||
'.json',
|
||
'.jsx',
|
||
'.mjs',
|
||
'.ts',
|
||
'.tsx',
|
||
'.vue',
|
||
],
|
||
},
|
||
server: {
|
||
port: 3000,
|
||
proxy: {
|
||
// 配置代理
|
||
'/api': {
|
||
target: 'http://127.0.0.1:8080',
|
||
changeOrigin: true,
|
||
secure: false,
|
||
// 如果后端API不包含/api前缀,可以使用下面的配置移除它
|
||
// rewrite: (path) => path.replace(/^\/api/, '')
|
||
}
|
||
}
|
||
},
|
||
css: {
|
||
preprocessorOptions: {
|
||
sass: {
|
||
api: 'modern-compiler',
|
||
},
|
||
scss: {
|
||
api:'modern-compiler',
|
||
},
|
||
},
|
||
},
|
||
})
|