初始化模版工程
This commit is contained in:
43
next.config.ts
Normal file
43
next.config.ts
Normal file
@@ -0,0 +1,43 @@
|
||||
import type { NextConfig } from 'next';
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
import dotenv from 'dotenv';
|
||||
|
||||
// 加载 .env 到 process.env(内部会用 dotenv.populate 注入)
|
||||
dotenv.config({ path: '.env', override: true });
|
||||
|
||||
let projectId = '';
|
||||
// 尝试从根目录 .project 读取 project_id / user_id 注入到环境变量
|
||||
try {
|
||||
const projectPath = path.join(process.cwd(), '.project');
|
||||
const raw = fs.readFileSync(projectPath, 'utf8');
|
||||
const data = JSON.parse(raw) as {
|
||||
project_id?: string;
|
||||
};
|
||||
|
||||
// 直接复用 dotenv.populate,把 .project 内容也注入到 process.env
|
||||
projectId = data?.project_id ?? '';
|
||||
} catch {
|
||||
// 没有 .project 或解析失败时静默忽略,保持兼容
|
||||
}
|
||||
|
||||
const nextConfig: NextConfig = {
|
||||
reactStrictMode: false,
|
||||
turbopack: {},
|
||||
typescript: {
|
||||
ignoreBuildErrors: true,
|
||||
},
|
||||
env: {
|
||||
PROJECT_ID: projectId,
|
||||
},
|
||||
serverExternalPackages: [
|
||||
'discord.js',
|
||||
'@discordjs/ws',
|
||||
'@discordjs/rest',
|
||||
'dingtalk-stream',
|
||||
'ws',
|
||||
],
|
||||
};
|
||||
|
||||
export default nextConfig;
|
||||
|
||||
Reference in New Issue
Block a user