Appearance
Bug #002: epub.js 缺少 JSZip 依赖导致渲染空白
现象
修复 Bug #001(中文文件名)后,epub 阅读器页面加载正常但内容区域持续空白。JS 控制台无报错。
根因
epub.js 的所有构建版本(包括 epub.min.js、epub.legacy.min.js)均将 JSZip 作为外部依赖,通过 UMD 的 root["JSZip"] 方式引用。
阅读器页面只加载了 epub.min.js,未加载 jszip.min.js,导致 window.JSZip 为 undefined。epub.js 初始化失败但未抛出可见错误。
修复
在阅读器 HTML 中增加 JSZip 加载,顺序必须为:JSZip → epub.js。
html
<script src="/books/jszip.min.js"></script>
<script src="/books/epub.min.js"></script>从 node_modules/jszip/dist/jszip.min.js 和 node_modules/epubjs/dist/epub.min.js 复制至 public/books/。
同时添加加载失败检测和友好错误提示。
关联文件
public/books/jszip.min.js— 新增public/books/epub.min.js— 新增(本地版替代 CDN)public/books/reader-money-dog.htmlpublic/books/reader-rich-dad.html