jspdf - 尝试保存 PDF 时 IE 中的 jsPDF“预期对象”异常
问题描述
尝试保存 PDF 文件时,会出现以下堆栈跟踪并且文件未下载:
TypeError: Object expected
at API.save (http://localhost:8080/applications/lib/jspdf/jspdf.debug.js:3648:11)
at Anonymous function (http://localhost:8080/applications/js/<my_custom_js_file>.js:288:12)
at Anonymous function (http://localhost:8080/applications/lib/angular-1.5.8/angular.min.js:158:482)
at e (http://localhost:8080/applications/lib/angular-1.5.8/angular.min.js:45:442)
at Anonymous function (http://localhost:8080/applications/lib/angular-1.5.8/angular.min.js:48:300)
还尝试了一个简单的示例并得到了相同的结果:
var doc = new jsPDF();
doc.text("hello", 20, 20);
doc.save("table.pdf");
解决方案
IE 不支持原生 Promise。因此,初始化脚本在版本 1.5.3 的第 12016 行失败:
SCRIPT5009: 'Promise' is undefined
jspdf.debug.js (12016,5)
之后,脚本不再初始化所需的上下文。
修复应该是第 3 方承诺库 - 我已经通过在包含 jspdf.debug.js 之前包含以下资源来解决它:
<script type="text/javascript" src="/applications/lib/ie-promise/es6-promise.js"></script>
<script type="text/javascript" src="/applications/lib/ie-promise/es6-promise@4/dist/es6-promise.auto.js"></script>
推荐阅读
- c++ - 如何列出 ULevelStreaming 中的所有演员?
- javascript - 在 TypeScript API 中跳过异步等待
- cmake - 在安装时为 cmake 项目设置适当的 rpath
- r - 为什么 chron 包从 2030 年开始奇怪地处理 2 位数年份?
- javascript - 防止 slick.js 打开链接 onclick next
- wordpress - 编辑重定向的 Wordpress 站点
- android - 在 textView 上显示图像位置
- javascript - 在 vscode 语言服务器中预打开文件
- python - CSV 中的 Snowflake COPY INTO 列
- ssas - 使用 DAX 实施 SSAS RLS