Init applications

This commit is contained in:
NVWA Bot
2025-12-24 02:07:58 +00:00
commit 1b780dc67e
193 changed files with 35016 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
import { defineConfig, loadEnv } from "vite";
import uni from "@dcloudio/vite-plugin-uni";
import { UnifiedViteWeappTailwindcssPlugin } from "weapp-tailwindcss/vite";
import tailwindcss from "@tailwindcss/postcss";
import nvwaVitePlugin from "@nvwa-app/vite-plugin";
const isH5 = process.env.UNI_PLATFORM === "h5";
const isApp = process.env.UNI_PLATFORM === "app";
const WeappTailwindcssDisabled = isH5 || isApp;
export default defineConfig(({ mode }) => {
const env = loadEnv(mode, process.cwd(), "");
console.log("env", env);
// 检查是否启用调试构建模式(通过环境变量控制)
const isDebugBuild = env.NVWA_BUILD_DEBUG === "true" || process.env.NVWA_BUILD_DEBUG === "true";
return {
define: {
"import.meta.env.NVWA_BASE_URL": JSON.stringify(env.NVWA_BASE_URL),
},
plugins: [
uni(),
nvwaVitePlugin(),
UnifiedViteWeappTailwindcssPlugin(
{
disabled: WeappTailwindcssDisabled,
rem2rpx: true,
},
),
],
css: {
postcss: {
plugins: [
tailwindcss(),
],
},
},
build: {
// 调试模式下禁用压缩和混淆,保持代码可读性
minify: isDebugBuild ? false : "esbuild",
// 生成 source maps 以便调试
sourcemap: isDebugBuild ? true : false,
// 保持代码分割,不合并成单个大文件
rollupOptions: {
output: {
// 调试模式下保持文件名的可读性(不使用 hash便于调试
entryFileNames: isDebugBuild ? "assets/[name].js" : "assets/[name]-[hash].js",
chunkFileNames: isDebugBuild ? "assets/[name].js" : "assets/[name]-[hash].js",
assetFileNames: isDebugBuild ? "assets/[name].[ext]" : "assets/[name]-[hash].[ext]",
},
},
// 调试模式下不压缩 CSS
cssMinify: !isDebugBuild,
// 增加 chunk 大小警告阈值(调试模式下可能文件较大)
chunkSizeWarningLimit: isDebugBuild ? 2000 : 500,
},
};
});