all in
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* 复制 Monaco Editor 静态资源到 public 目录
|
||||
* 用于离线环境或避免 CDN 加载失败
|
||||
*/
|
||||
|
||||
import { cpSync, existsSync, mkdirSync } from 'fs';
|
||||
import { join, dirname } from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
|
||||
const projectRoot = join(__dirname, '..');
|
||||
const monacoSrc = join(projectRoot, 'node_modules', 'monaco-editor', 'min');
|
||||
const monacoDest = join(projectRoot, 'public', 'monaco-editor');
|
||||
|
||||
try {
|
||||
console.log('📦 开始复制 Monaco Editor 资源...');
|
||||
console.log('源目录:', monacoSrc);
|
||||
console.log('目标目录:', monacoDest);
|
||||
|
||||
// 检查源目录是否存在
|
||||
if (!existsSync(monacoSrc)) {
|
||||
console.error('❌ 错误: Monaco Editor 源目录不存在');
|
||||
console.error('请先运行: npm install monaco-editor');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
// 创建目标目录
|
||||
if (!existsSync(monacoDest)) {
|
||||
mkdirSync(monacoDest, { recursive: true });
|
||||
}
|
||||
|
||||
// 复制整个 min 目录到 public/monaco-editor
|
||||
cpSync(monacoSrc, monacoDest, { recursive: true });
|
||||
|
||||
console.log('✅ Monaco Editor 资源复制成功!');
|
||||
console.log('📂 资源位置:', monacoDest);
|
||||
console.log('\n下一步:');
|
||||
console.log('1. 在 ComparePreview.tsx 中取消注释本地路径配置');
|
||||
console.log('2. 注释掉 CDN 配置');
|
||||
console.log('3. 重启开发服务器');
|
||||
} catch (error) {
|
||||
console.error('❌ 复制失败:', error.message);
|
||||
process.exit(1);
|
||||
}
|
||||
Reference in New Issue
Block a user