66 lines
1.8 KiB
TypeScript
66 lines
1.8 KiB
TypeScript
import path from 'node:path'
|
|
import { defineConfig, type UserConfigExport } from '@tarojs/cli'
|
|
|
|
import devConfig from './dev'
|
|
import prodConfig from './prod'
|
|
|
|
const appEnv = process.env.NODE_ENV || 'development'
|
|
const apiBaseUrl = process.env.TARO_APP_API_BASE_URL || 'https://api-mini-dev.laosankeji.com/api/mini/v1'
|
|
const useMock = String(process.env.TARO_APP_USE_MOCK || 'true') === 'true'
|
|
const requestTimeout = Number(process.env.TARO_APP_REQUEST_TIMEOUT || 10000)
|
|
const tenantCode = process.env.TARO_APP_TENANT_CODE || 't1770086772899'
|
|
|
|
export default defineConfig<'vite'>(async (merge) => {
|
|
const baseConfig: UserConfigExport<'vite'> = {
|
|
projectName: 'TakeoutSaaS.C-Side-Mini-Program-V1',
|
|
date: '2026-3-9',
|
|
designWidth: 375,
|
|
deviceRatio: {
|
|
640: 2.34 / 2,
|
|
750: 1,
|
|
375: 2,
|
|
828: 1.81 / 2
|
|
},
|
|
sourceRoot: 'src',
|
|
outputRoot: 'dist',
|
|
alias: {
|
|
'@': path.resolve(__dirname, '..', 'src')
|
|
},
|
|
plugins: ['@tarojs/plugin-html'],
|
|
defineConstants: {
|
|
__APP_ENV__: JSON.stringify(appEnv),
|
|
__API_BASE_URL__: JSON.stringify(apiBaseUrl),
|
|
__USE_MOCK__: JSON.stringify(useMock),
|
|
__REQUEST_TIMEOUT__: JSON.stringify(requestTimeout),
|
|
__TENANT_CODE__: JSON.stringify(tenantCode)
|
|
},
|
|
copy: {
|
|
patterns: [],
|
|
options: {}
|
|
},
|
|
framework: 'vue3',
|
|
compiler: 'vite',
|
|
mini: {
|
|
postcss: {
|
|
pxtransform: {
|
|
enable: true,
|
|
config: {}
|
|
},
|
|
cssModules: {
|
|
enable: false,
|
|
config: {
|
|
namingPattern: 'module',
|
|
generateScopedName: '[name]__[local]___[hash:base64:5]'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if (process.env.NODE_ENV === 'development') {
|
|
return merge({}, baseConfig, devConfig)
|
|
}
|
|
|
|
return merge({}, baseConfig, prodConfig)
|
|
})
|