我正在使用pdfmake生成PDF文件在客户端( Cordova 应用程序)。
文档定义越复杂,pdfmake 生成文档所需的时间就越长。
因此,我的目的是对 pdfmake 生成文档所需的时间设置严格限制,类似于 timeout命令在 bash 中执行,并指示用户是否无法完成。
这是我正在尝试做的事情的片段:
runFor(10, function(){ // run this function for a maximum of 10s
pdfMake.createPdf(documentDefinition).getBase64(function(b64buff){
//do something with the result
});
}, ontimeout);
最佳答案
一种可能性是 JavaScript 中的 setInterval 函数。
var i =0;
setInterval(function(){i++;console.log(i)},1000);
这段代码每秒将 i 增加 1。现在,在要执行的函数中,检查 i 是否足够大以将代码转移到中断。只要确保在重新启动该功能时重置 i 即可。
关于javascript - 设置函数的最大执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47645845/