我也是这个问题,经过反复研究发现: 凡是从 桌面的快捷方式启动的,就有 调试器, 凡是从 任务栏的快捷方式启动的,就没有调试器, 哪怕是你先从桌面的快捷方式启动,然后 固定到任务栏后,关闭微信开发者工具,再从 任务栏的快捷方式启动,依旧没有调试器,奇了怪了,不明觉厉。。。。
微信开发工具的调试器什么内容都没有?我的调试器去哪了?[图片]
2021-11-24为什么一定要等 这个 接口啊?自己做个 离屏 canvas 就行了啊! 上段代码吧。 bee.prototype._init_canvas = function(){ var o = this; var q = wx.createSelectorQuery(); q.select('#'+o.cid).fields({ node: true, size: true }).exec(function(res){ // o._cvs 获取 o._cvs = res[0].node; o._cvs.g = o._cvs.getContext('2d'); o._cvs.size = { w:res[0].width, h:res[0].height, scale:1 }; o._cvs.width = o._cvs.size.w; o._cvs.height = o._cvs.size.h; // o._cvs_back 获取 var cvs_back = o._cvs._canvasRef.ownerDocument.createElement('canvas'); cvs_back.g = cvs_back.getContext('2d'); cvs_back.size = { w:res[0].width, h:res[0].height, scale:1 }; cvs_back.width = cvs_back.size.w; cvs_back.height = cvs_back.size.h; o._cvs_back = cvs_back; // o._cvs_map 获取 var cvs_map = o._cvs._canvasRef.ownerDocument.createElement('canvas'); cvs_map.g = cvs_map.getContext('2d'); cvs_map.size = { w:res[0].width, h:res[0].height + 2 * o._map_padding , scale:1 }; cvs_map.width = cvs_map.size.w; cvs_map.height = cvs_map.size.h; o._cvs_map = cvs_map; o._state = 'init_canvas_succ'; }) } 1:o._cvs = res[0].node; 这句话是获取 微信封装的 canvas 节点对象(不是原生canvas封装哦,是类似 jquery 的方式做了个外壳包裹),之后,生成自己的 离屏需要这个 对象。这个 o._cvs 是取自 *.wxml 中的 这个节点。 2:var cvs_back = o._cvs._canvasRef.ownerDocument.createElement('canvas'); 这句话中 _canvasRef 是获得 原生 canvas 节点对象的引用,然后用 ownerDocument 获得其拥有者 原生DOM对象,这样就可以用 createElement('canvas'); 生成自己的的离屏 canvas 节点了,而且是 原生的 canvas 哦,可以放手施为了,用微信的封装canvas ,总是很别扭的。,比如:如果想做两个 canvas 之间的 图像 粘贴,就会写出这样一个别扭的 代码: o._cvs.g.drawImage( o._cvs_back. _canvasRef, .......) 以后,可以用原生的 canvas 写出熟悉的代码体验: o._cvs.g.drawImage( o._cvs_back, .......) 才刚刚开始学习微信向程序 两周,也不知道我这个 是不是就是 所谓的“离屏canvas”哈,我是用这种方式给自己写的canvas小游戏做的 后台canvas 绘图,然后“翻版”到 显示的 canvas 上的。 [图片]
OffscreenCanvas 什么时候可以用?OffscreenCanvas 目前有部分文档接口,但是如何跟 Canvas 一起进行使用,并没有给出任何实例代码,并且接口部分并没有给出任何支持,这块不知道具体有什么规划?
2020-08-31