后端application.yml文件代码
server:
port: 6060
servlet:
context-path: /api
spring:
mvc:
throw-exception-if-no-handler-found: true
web:
resources:
add-mappings: false
application:
name: easygpt
mybatis:
configuration:
map-underscore-to-camel-case: true
#接口密钥
api:
password: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
AI 原始vite.config.js文件
import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
// https://vite.dev/config/
export default defineConfig({
plugins: [
vue(),
],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
},
},
server: {
port: 3001,
hmr: true,
proxy: {
"/ai": {
target: "http://localhost:6060",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '/api'),
}
}
}
})
论坛原始vite.config.js文件
import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [vue()],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
server: {
hmr: true,
port: 3004,
proxy: {
"/api": {
target: "http://localhost:7070",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '/api'),
pathRewrite: {
"^api": "/api"
}
}
}
},
build: {
chunkSizeWarningLimit: 3000,
rollupOptions: {
output: {
manualChunks(id) {
if (id.includes('node_modules')) {
return id.toString().split('node_modules/')[1].split('/')[0].toString();
}
}
}
},
chunkFileNames: (chunkInfo) => {
const facadeModuleId = chunkInfo.facadeModuleId
? chunkInfo.facadeModuleId.split('/')
: [];
const fileName =
facadeModuleId[facadeModuleId.length - 2] || '[name]';
return `js/${fileName}/[name].[hash].js`;
}
}
})
怎么去做合并啊,我自己合并的话会404不通
问题代码
import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [vue()],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
server: {
hmr: true,
port: 3004,
proxy: {
"/api": {
target: "http://localhost:7070",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '/api'),
pathRewrite: {
"^api": "/api"
}
},
"/api": {
target: "http://localhost:6060",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '/api'),
}
}
},
build: {
chunkSizeWarningLimit: 3000,
rollupOptions: {
output: {
manualChunks(id) {
if (id.includes('node_modules')) {
return id.toString().split('node_modules/')[1].split('/')[0].toString();
}
}
}
},
chunkFileNames: (chunkInfo) => {
const facadeModuleId = chunkInfo.facadeModuleId
? chunkInfo.facadeModuleId.split('/')
: [];
const fileName =
facadeModuleId[facadeModuleId.length - 2] || '[name]';
return `js/${fileName}/[name].[hash].js`;
}
}
})