업데이트:

import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import fs from "fs";

let active = true;
if(import.meta.VITE_APP_MODE === 'prod') { //vue3에서는 환경변수명의 prefix가 'VITE'로 시작되어야 함. 환경변수를 정의할 경우 import.meta 로 작성해야함.
	active = false;
}

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
  ],
  build: {
    sourcemap: active,
    outDir: './dist/recruit',
    rollupOptions: { //빌드되는 파일형식 정의
      output: {
        assetFileNames: '[ext]/[name][extname]',
        chunkFileNames: 'chunks/[name].js?v=[hash]',
        entryFileNames: 'js/[name].js',
      }
    },
  },
  css: {
    preprocessorOptions: {
      scss: {
				additionalData: `
					@import "@/assets/scss/_base.scss";
					`
			}
    },
    devSourcemap:active
  },
  server:{
    https:{
      key: fs.readFileSync('pkey.*********.keystore.pem'),
      cert: fs.readFileSync('cert.*********..keystore.pem'),
    },
    host: 'local.*********.kr', //로컬용 hostname 작성, 여기서 작성된 이름으로 컴퓨터의 host파일에도 추가되어야 함.
  },
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  }
})

댓글남기기