Ver código fonte

✨ feat(config): 添加动态输出目录和登录注册页面

- 新增动态生成输出目录功能,根据平台和环境变量自动生成dist/平台/环境路径
- 添加getPlatform和getEnv工具函数获取编译平台和环境变量
- 在app.config.ts中添加登录和注册页面路由

📦 build(config): 优化项目构建配置

- 修改outputRoot使用动态生成的outputDir路径
- 保持原有webpack配置不变
D8D Developer 4 meses atrás
pai
commit
257745ef85
2 arquivos alterados com 21 adições e 4 exclusões
  1. 18 3
      mini/config/index.ts
  2. 3 1
      mini/src/app.config.ts

+ 18 - 3
mini/config/index.ts

@@ -4,8 +4,23 @@ import { UnifiedWebpackPluginV5 } from 'weapp-tailwindcss/webpack'
 import devConfig from './dev'
 import prodConfig from './prod'
 
-// https://taro-docs.jd.com/docs/next/config#defineconfig-辅助函数
+// 获取当前编译平台(默认微信小程序)
+const getPlatform = () => {
+  // 从环境变量获取编译平台,Taro 会自动设置TARO_ENV 环境变量
+  return process.env.TARO_ENV || 'weapp'
+}
+
+// 获取当前环境(开发/生产)
+const getEnv = () => {
+  return process.env.NODE_ENV || 'development'
+}
+
 export default defineConfig<'webpack5'>(async (merge, { command, mode }) => {
+  // 动态生成输出目录:dist/平台/环境
+  const platform = getPlatform()
+  const env = getEnv()
+  const outputDir = `dist/${platform}/${env}`
+
   const baseConfig: UserConfigExport<'webpack5'> = {
     projectName: 'mini',
     date: '2025-7-27',
@@ -17,7 +32,7 @@ export default defineConfig<'webpack5'>(async (merge, { command, mode }) => {
       828: 1.81 / 2
     },
     sourceRoot: 'src',
-    outputRoot: 'dist',
+    outputRoot: outputDir, // 使用动态生成的输出目录
     plugins: [
       "@tarojs/plugin-generator"
     ],
@@ -114,4 +129,4 @@ export default defineConfig<'webpack5'>(async (merge, { command, mode }) => {
   }
   // 生产构建配置(默认开启压缩混淆等)
   return merge({}, baseConfig, prodConfig)
-})
+})

+ 3 - 1
mini/src/app.config.ts

@@ -1,6 +1,8 @@
 export default defineAppConfig({
   pages: [
-    'pages/index/index'
+    'pages/index/index',
+    'pages/login/index',
+    'pages/register/index'
   ],
   window: {
     backgroundTextStyle: 'light',