hookehuyr

配置系统参数

1 +VITE_BASE = '/'
1 VITE_OPENID = 'api-test-openid' 2 VITE_OPENID = 'api-test-openid'
2 VITE_ID = '13812345678' 3 VITE_ID = '13812345678'
3 VITE_PIN = '8888' 4 VITE_PIN = '8888'
......
1 +VITE_BASE = '/f/voice/'
1 VITE_APP_OPENID = '' 2 VITE_APP_OPENID = ''
2 VITE_APP_ID = '' 3 VITE_APP_ID = ''
3 VITE_APP_PIN = '' 4 VITE_APP_PIN = ''
......
1 +const PROXY_TARGET = 'http://voice.onwall.cn'; // 反向代理服务器地址
2 +const OUTDIR = 'voice' // 打包输出文件夹名称
3 +
4 +export {
5 + PROXY_TARGET,
6 + OUTDIR
7 +}
1 import vue from '@vitejs/plugin-vue'; 1 import vue from '@vitejs/plugin-vue';
2 import styleImport, { VantResolve } from 'vite-plugin-style-import'; 2 import styleImport, { VantResolve } from 'vite-plugin-style-import';
3 -import { defineConfig } from 'vite'; 3 +import { defineConfig, loadEnv } from 'vite';
4 +import { PROXY_TARGET, OUTDIR } from './PRJCONFIG'
4 5
5 var path = require('path'); 6 var path = require('path');
6 7
7 export default({ command, mode }) => { 8 export default({ command, mode }) => {
8 - let isProd = (command === 'serve'); // 情景配置是否为开发模式 serve 或 build 9 + // let isProd = (command === 'serve'); // 情景配置是否为开发模式 serve 或 build
9 return defineConfig({ 10 return defineConfig({
10 // root: '', 11 // root: '',
11 - base: isProd ? '/' : '/f/voice/', // 开发或生产环境服务的公共基础路径。 12 + base: loadEnv(mode, process.cwd()).VITE_BASE, // 开发或生产环境服务的公共基础路径。
13 + // base: isProd ? '/' : '/f/voice/', // 开发或生产环境服务的公共基础路径。
12 // mode: '', // 在配置中指明将会把 serve 和 build 时的模式 都 覆盖掉。也可以通过命令行 --mode 选项来重写。 14 // mode: '', // 在配置中指明将会把 serve 和 build 时的模式 都 覆盖掉。也可以通过命令行 --mode 选项来重写。
13 // define: '', // 定义全局常量替换方式。其中每项在开发环境下会被定义在全局,而在构建时被静态替换。 15 // define: '', // 定义全局常量替换方式。其中每项在开发环境下会被定义在全局,而在构建时被静态替换。
14 plugins: [ // 将要用到的插件数组。Falsy 虚值的插件将被忽略,插件数组将被扁平化(flatten)。查看 插件 API 获取 Vite 插件的更多细节。 16 plugins: [ // 将要用到的插件数组。Falsy 虚值的插件将被忽略,插件数组将被扁平化(flatten)。查看 插件 API 获取 Vite 插件的更多细节。
...@@ -56,7 +58,8 @@ export default({ command, mode }) => { ...@@ -56,7 +58,8 @@ export default({ command, mode }) => {
56 // open: false, // 在服务器启动时自动在浏览器中打开应用程序. 当此值为字符串时, 会被当作URL的路径名. 58 // open: false, // 在服务器启动时自动在浏览器中打开应用程序. 当此值为字符串时, 会被当作URL的路径名.
57 proxy: { // 代理 59 proxy: { // 代理
58 '/srv/': { 60 '/srv/': {
59 - target: 'http://voice.onwall.cn', 61 + // target: 'http://voice.onwall.cn',
62 + target: PROXY_TARGET,
60 changeOrigin: true, 63 changeOrigin: true,
61 // rewrite: (path) => path.replace(/^\/api/, '') 64 // rewrite: (path) => path.replace(/^\/api/, '')
62 }, 65 },
...@@ -67,7 +70,8 @@ export default({ command, mode }) => { ...@@ -67,7 +70,8 @@ export default({ command, mode }) => {
67 // watch: '', // 传递给 chokidar 的文件系统监视器选项。 70 // watch: '', // 传递给 chokidar 的文件系统监视器选项。
68 }, 71 },
69 build: { 72 build: {
70 - outDir: 'voice', // 指定输出路径(相对于项目根目录). 73 + // outDir: 'voice', // 指定输出路径(相对于项目根目录).
74 + outDir: OUTDIR, // 指定输出路径(相对于项目根目录).
71 assetsDir: 'static', 75 assetsDir: 'static',
72 rollupOptions: { 76 rollupOptions: {
73 output: { 77 output: {
......