微信小程序 在文檔中也有描述 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);
}
