- 包含4个产业方向的前端项目:智能开发、智能制造、大健康、财经商贸 - 已清理node_modules、.yoyo等大文件,项目大小从2.6GB优化至631MB - 配置完善的.gitignore文件 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
50 lines
1.6 KiB
JavaScript
50 lines
1.6 KiB
JavaScript
const fs = require('fs');
|
|
|
|
// 读取学生完成的项目数据
|
|
const projectsData = JSON.parse(
|
|
fs.readFileSync('./网页未导入数据/学生完成的项目.json', 'utf-8')
|
|
);
|
|
|
|
// 筛选出智能开发产业的项目
|
|
const smartDevProjects = projectsData.filter(item =>
|
|
item['所属就业管家'] === '智能开发' &&
|
|
item['所属垂直方向'] === 'AI大前端'
|
|
);
|
|
|
|
// 转换为页面需要的格式
|
|
const myProjectsData = smartDevProjects.map(item => ({
|
|
unitName: item['单元名称查询'],
|
|
projects: item['AI项目名称'].filter(p => p && p.trim() !== '')
|
|
.map(p => {
|
|
// 去掉项目名称前面的序号
|
|
return p.replace(/^\d+\.\s*/, '');
|
|
})
|
|
}));
|
|
|
|
// 生成要替换的代码
|
|
const projectsCode = `const myProjectsData = ${JSON.stringify(myProjectsData, null, 2)};`;
|
|
|
|
// 读取原文件
|
|
const filePath = './src/pages/ProjectLibraryPage/index.jsx';
|
|
let fileContent = fs.readFileSync(filePath, 'utf-8');
|
|
|
|
// 备份原文件
|
|
const backupPath = `${filePath}.backup_myprojects_${new Date().toISOString().replace(/[:.]/g, '-')}`;
|
|
fs.writeFileSync(backupPath, fileContent);
|
|
console.log(`✅ 已创建备份:${backupPath}`);
|
|
|
|
// 替换myProjectsData数据
|
|
fileContent = fileContent.replace(
|
|
/const myProjectsData = \[\s*[\s\S]*?\];/,
|
|
projectsCode
|
|
);
|
|
|
|
// 写回文件
|
|
fs.writeFileSync(filePath, fileContent);
|
|
|
|
console.log('✅ 我的项目库数据更新完成!');
|
|
console.log(`共导入 ${myProjectsData.length} 个单元的项目数据`);
|
|
console.log('单元列表:');
|
|
myProjectsData.forEach((unit, index) => {
|
|
console.log(`${index + 1}. ${unit.unitName} (${unit.projects.length}个项目)`);
|
|
}); |