Files
DDDMicroFrontend/front-end/app-shared/vite.config.ts

47 lines
1.4 KiB
TypeScript

import { defineConfig, loadEnv, UserConfig } from 'vite'
import federation from "@originjs/vite-plugin-federation";
import { nacosServiceManage } from "nacos-federation";
export default defineConfig(async ({ mode }): Promise<UserConfig> => {
const env = loadEnv(mode, process.cwd());
await nacosServiceManage.create({
serverList: env.VITE_NACOS_ADDRESS,
serviceName: env.VITE_SERVER_NAME,
port: Number(env.VITE_SERVER_PORT)
});
return {
base: `/${ env.VITE_SERVER_NAME }/`,
server: {
port: Number(env.VITE_SERVER_PORT),
host: '0.0.0.0',
strictPort: true,
cors: true
},
plugins: [
federation({
name: env.VITE_SERVER_NAME,
exposes: {
"./config": "./src/config/index.ts",
"./infra": "./src/infra/index.ts",
"./utils": "./src/utils/index.ts",
},
shared: {
axios: { requiredVersion: '^1.12.2' }
}
})
],
build: {
target: 'esnext',
minify: false,
cssCodeSplit: true,
rollupOptions: {
input: './src/index.ts',
output: {
format: 'esm',
minifyInternalExports: false
}
}
}
}
});