import fs from 'fs'; import path from 'path'; import { fileURLToPath } from 'url'; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); // 读取导师信息(通用)数据 const allTeachersData = JSON.parse( fs.readFileSync(path.join(__dirname, '网页未导入数据/导师信息(通用).json'), 'utf-8') ); // 筛选财经商贸产业的导师 const financeTeachers = allTeachersData.filter(teacher => teacher["就业管家"] === "财经商贸"); // 创建财经商贸导师数据字符串,使用正确的格式 const financeTeachersText = financeTeachers.map(teacher => { const teacherName = teacher["查询导师名称"]; return ` "${teacherName}": { name: "${teacherName}", introduction: "${teacher["导师介绍"]}", specialties: ${JSON.stringify(teacher["导师特长"])}, avatar: "${teacher["❌导师头像url链接"]}", type: "${teacher["导师类型"] === "任课老师" ? "复合课导师" : teacher["导师类型"]}", verticalDirection: "${teacher["所属垂直方向"]}", courses: [] }`; }).join(',\n'); // 读取mockData.js文件 let mockDataContent = fs.readFileSync(path.join(__dirname, 'src/data/mockData.js'), 'utf-8'); // 备份原文件 const backupPath = path.join(__dirname, 'src/data', `mockData.js.backup_${new Date().toISOString().replace(/[:.]/g, '-')}`); fs.copyFileSync( path.join(__dirname, 'src/data/mockData.js'), backupPath ); console.log(`备份已创建: ${backupPath}`); // 找到teacherData的位置,在"李奇"导师后面添加财经商贸导师 const liQiPattern = /"李奇": \{[^}]*\}/s; const liQiMatch = mockDataContent.match(liQiPattern); if (liQiMatch) { // 在李奇导师后面添加财经商贸导师 const insertPosition = liQiMatch.index + liQiMatch[0].length; const beforeContent = mockDataContent.substring(0, insertPosition); const afterContent = mockDataContent.substring(insertPosition); // 添加财经商贸导师 mockDataContent = beforeContent + ',\n' + financeTeachersText + afterContent; // 写入更新后的文件 fs.writeFileSync( path.join(__dirname, 'src/data/mockData.js'), mockDataContent, 'utf-8' ); console.log(`成功添加 ${financeTeachers.length} 位财经商贸导师`); } else { console.error('未找到李奇导师的位置,无法添加财经商贸导师'); }