# Hướng dẫn áp dụng Fix Excel Download - CẬP NHẬT 2026 ## Vấn đề File Excel chỉ tải được 1 lần, lần 2+ thất bại vì `URL.revokeObjectURL()` được gọi sau 60s. ## 🎯 GIẢI PHÁP HOÀN HẢO - Fix v2.0 ### Cách 1: Auto Loader (TỰ ĐỘNG) - KHÔNG CẦN LÀM GÌ CẢ - `auto-excel-fix-loader.js` tự động tải `vai-excel-fix-v2.js` khi trang mở - Script đã được tích hợp sẵn trong index.html - Chỉ cần mở lại trang là được áp dụng tự động ✅ ### Cách 2: Bookmarklet - KHÔNG CẦN CHỈNH SỬA CODE Tạo bookmark mới với URL: ```javascript javascript:(function(){var s=document.createElement('script');s.src='/vai-excel-fix-v2.js?v='+Date.now();s.onload=function(){alert('✅ Excel Fix v2.0 đã tải!\nBạn có thể tải Excel bao nhiêu lần tùy thích!');};document.head.appendChild(s);})(); ``` ### Cách 3: Thêm script tag vào index.html (TỰ ĐỘNG) Thêm đoạn sau vào trước thẻ ``: ```html ``` ## Test 1. Mở Space V.AISTUDIO 2. Tạo báo giá (lập báo giá) → Click 💾 Excel → tải ✅ 3. Click 💾 Excel NGAY → tải tiếp tục ✅ 4. Click nhiều lần nữa → luôn tải được ✅ 5. Quay lại → tạo đơn hàng mới → GH Excel → tải ✅ ## File đã chuẩn - ✅ `vai-excel-fix-v2.js` - Script fix chính (mới nhất) - ✅ `auto-excel-fix-loader.js` - Tự động tải fix - ✅ `vai-quote-excel-order-fix-v1050.js` - Backup (nếu v2 không tải được) ## Điều kiện áp dụng - Cần có thư viện ExcelJS (đã có trong index.html): ```html ``` ## Changelog v2.0 - Thay đổi cách quản lý blob URL: registry toàn cục - Patch URL.revokeObjectURL: không revoke khi chưa unload - Hỗ trợ cả Quote modal và Order modal - Toast thông báo khi xuất thành công/thất bại --- *Cập nhật: 14-07-2026 - ML Intern - Fix Excel multi-download hoàn hảo*