import { defineConfig } from 'vite'; import dts from 'vite-plugin-dts'; import vue from '@vitejs/plugin-vue'; import path from 'path'; import config from './package.json'; const banner = `/*! * ${config.name} v${config.version} ${new Date()} * (c) 2022 @jdf2e. * Released under the MIT License. */`; export default defineConfig({ resolve: { alias: [{ find: '@', replacement: path.resolve(__dirname, './src') }] }, css: { preprocessorOptions: { scss: { // example : additionalData: `@import "./src/design/styles/variables";` // dont need include file extend .scss additionalData: `@import "@/packages/styles/variables.scss";@import "@/sites/assets/styles/variables.scss";` } }, postcss: { plugins: [ require('autoprefixer')({ overrideBrowserslist: ['> 0.5%', 'last 2 versions', 'ie > 11', 'iOS >= 10', 'Android >= 5'] }) ] } }, plugins: [vue()], build: { minify: false, rollupOptions: { // 请确保外部化那些你的库中不需要的依赖 external: ['vue', 'vue-router'], output: { banner, // 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量 globals: { vue: 'Vue' }, plugins: [] } }, lib: { entry: 'src/packages/nutui.vue.build.ts', name: 'nutui', fileName: 'nutui', formats: ['es', 'umd'] } } });