html2canvas改成同步,html2canvas转为图片异步转同步问题(记录)
描述:最近使用html2canvas插件截取頁面上指定dom為圖片,然后將生成的圖片替換頁面上的dom后,將替換后的頁面內容保存至數據庫,結果保存的是保存前的頁面,初步判定是html2canvas的異步執行造成的。
參考了兩篇博文:
一、H5 -- (功能)基于html2canvas實現長按網頁保存為圖片到本地
https://blog.csdn.net/weixin_41076513/article/details/80896399
二、漫談javascript同步&異步編程的N種方式 - ps:將html2canvas變成同步的解決方案
http://www.cnblogs.com/quenteenfix/p/3556269.html
對html2canvas的使用很有幫助,但遺憾的是最終并沒有讓我實現接下來的同步執行方法;
于是又發現了下面這篇文章:使用ajax 回調函數返回值 使用Promise完美解決(不是異步)
https://blog.csdn.net/fastjack/article/details/79981261
根據文章所講,發現html2canvas方法返回的確實是一個Promise對象,也確實可以用返回的promise對象.then()或Promise.all().then()方法實現同步執行;
最終打印的順序:
說明確實Promise.all()中的方法在html2canvas后執行,即為同步執行;
總結
以上是生活随笔為你收集整理的html2canvas改成同步,html2canvas转为图片异步转同步问题(记录)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 根据url获取html源码,通过URL访
- 下一篇: 客厅秒变赛车场!国行Switch《马力欧