47 lines
1.8 KiB
JavaScript
47 lines
1.8 KiB
JavaScript
|
import { defineConfig } from 'vite'
|
|||
|
import uni from '@dcloudio/vite-plugin-uni'
|
|||
|
import UniPages from '@uni-helper/vite-plugin-uni-pages'
|
|||
|
import UnoCSS from 'unocss/vite'
|
|||
|
import zipPack from "vite-plugin-zip-pack"
|
|||
|
import dayjs from "dayjs";
|
|||
|
import path from 'path'
|
|||
|
// import vitePluginRemoveDir from './vite.plugin'; // 自己写的删除插件
|
|||
|
|
|||
|
// import getPages from './custom.page'
|
|||
|
// const {exclude} = getPages();
|
|||
|
// const excludeStaticModule = exclude.filter(item => item.indexOf('.vue') === -1)
|
|||
|
|
|||
|
const timeStringNow = dayjs().format("MM-DD HH-mm-ss")
|
|||
|
|
|||
|
|
|||
|
export default defineConfig(({ command, mode }) => {
|
|||
|
const { UNI_PLATFORM } = process.env // 得到 mp-weixin, h5, app 等
|
|||
|
return {
|
|||
|
plugins: [
|
|||
|
UniPages({
|
|||
|
exclude: ['**/components/**/**.*'],
|
|||
|
routeBlockLang: 'json5', // 虽然设了默认值,但是vue文件还是要加上 lang="json5", 这样才能很好地格式化
|
|||
|
// homePage 通过 vue 文件的 route-block 的type="home"来设定
|
|||
|
// pages 目录为 src/pages,分包目录不能配置在pages目录下
|
|||
|
// subPackages: ['src/pages-sub'], // 是个数组,可以配置多个,但是不能为pages里面的目录
|
|||
|
}),
|
|||
|
uni(),
|
|||
|
// vitePluginRemoveDir({dirName:excludeStaticModule}),
|
|||
|
UnoCSS(),
|
|||
|
zipPack({
|
|||
|
inDir: `dist/build/${UNI_PLATFORM}`, // 输入的文件夹,就是要打包的文件夹
|
|||
|
outDir: `dist/build`, // 打包好的 zip 文件放到哪个文件夹下
|
|||
|
outFileName: `${UNI_PLATFORM}-${timeStringNow}.zip`, //文件名不能包含\/:*?"<>|
|
|||
|
pathPrefix: ''
|
|||
|
}),
|
|||
|
],
|
|||
|
esbuild: {
|
|||
|
drop: ["console", "debugger"], //打包去掉console,debugger
|
|||
|
},
|
|||
|
resolve: {
|
|||
|
alias: {
|
|||
|
'@': path.resolve(__dirname, './src')
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
})
|