copy-www.js 1.03 KB
/**
 * 构建完成后,将 app-plus 产物复制到 unpackage,便于 HBuilderX 云打包时正确包含 www 内容。
 * 避免打包后出现「www/__uniappview.html 无法打开」。
 */
const fs = require('fs');
const path = require('path');

const root = path.resolve(__dirname, '..');
const srcDir = path.join(root, 'dist', 'build', 'app-plus');
const destDir = path.join(root, 'unpackage', 'dist', 'build', 'app-plus');

if (!fs.existsSync(srcDir)) {
  console.warn('[copy-www] 未找到 dist/build/app-plus,跳过复制');
  process.exit(0);
}

function copyRecursive(src, dest) {
  if (!fs.existsSync(dest)) {
    fs.mkdirSync(dest, { recursive: true });
  }
  const entries = fs.readdirSync(src, { withFileTypes: true });
  for (const e of entries) {
    const s = path.join(src, e.name);
    const d = path.join(dest, e.name);
    if (e.isDirectory()) {
      copyRecursive(s, d);
    } else {
      fs.copyFileSync(s, d);
    }
  }
}

copyRecursive(srcDir, destDir);
console.log('[copy-www] 已复制到 unpackage/dist/build/app-plus');