| 1234567891011121314151617181920212223242526 |
- // generate-icon-map.js
- const fs = require('fs');
- const path = require('path');
- const iconsDir = path.resolve(__dirname, 'static/icons');
- const outputFile = path.resolve(__dirname, 'common/icon-map.ts');
- // 获取所有 SVG 文件
- const files = fs.readdirSync(iconsDir).filter(file => file.endsWith('.svg'));
- // 生成映射表
- const iconMap = {};
- files.forEach(file => {
- const name = file.replace('.svg', '');
- iconMap[name] = `/static/icons/${file}`;
- });
- // 生成 TypeScript 文件
- const content = `
- // 由脚本自动生成,请勿手动修改
- export const iconMap = ${JSON.stringify(iconMap, null, 2)};
- `;
- fs.writeFileSync(outputFile, content);
- console.log(`✅ 生成图标映射表: ${outputFile}`);
- console.log(`✅ 共 ${Object.keys(iconMap).length} 个图标`);
|