微信小程序 在文檔中也有描述 native-component
大致意思是:canvas組件在微信小程序中屬於原生組件,而原生組件層級是最高的,多個同時加載的原生組件,誰加載的越慢誰的層級越高,-_-||
解決方法
1. 文檔中給出 cover-view
和 cover-image
這倆玩意,這倆同為原生組件,可以覆蓋部分原生組件 ==> 已自測,成功(推薦)
2. canvas => img => 展示
1> canvas組件設置樣式 position:fixed; top:999999px;
2> 加載成功后 wx.canvasToTempFilePath 轉為圖片進行展示
updateTempPath(count, canvasId) { /* 報表完成后渲染之后執行 */ setTimeout(()=>{ wx.canvasToTempFilePath({ x: 0, y: 0, width: //圖片的寬, height: //圖片的高, canvasId: canvasId, success: function(res) { // 成功生成圖片后執行 _self.setData({ sellImg: res.tempFilePath }); },fail: function (res) { // 失敗執行 count += 1; if (count < 3) { _self.updateTempPath(count,canvasId); }else { console.log(res) } } },_self); }, 300); }