- 小程序的让用户填满意度的触发条件是什么?
比如:满uv多少人,或者日活多人的小程序才会触发吗?
2022-04-19 - 新版Convas2D组件在真机中不绘制?
这是在index.js中的部分代码,点击按钮后调用了ClockProcessing函数。模拟器中各个机型都可以,基础库也换过几个,都可以运行。但是在真机中运行调试和预览时都不显示Convas的内容。其他内容正常,无报错。微信开发者工具也回退了版本到Stable 1.06.2209190,还是不行。请问各位这是什么原因? ClockProcessing: function () { var DrawingDegree = ((this.data.RemainedTime / this.data.SettedTime) * 2 * Math.PI).toFixed(2); wx.createSelectorQuery() .select('#Progress') .fields({ node: true, size: true }) .exec((res) => { const canvas = res[0].node const ctx = canvas.getContext('2d') const width = res[0].width const height = res[0].height //console.log(width); //console.log(height); // 初始化画布大小 const WindowInfo = wx.getWindowInfo() const dpr = WindowInfo.pixelRatio canvas.width = width * dpr canvas.height = height * dpr ctx.scale(dpr, dpr) ctx.translate(width / 2, height / 2); //重置原点坐标 ctx.rotate(1.5 * Math.PI); //重置笛卡尔坐标角度 //我真傻,真的。我单知道变换坐标系就可以方便的使用坐标运算。但不知道x和y倒转了。 //此时,向上为X正方向,向右为Y正方向 /////////////////// 灰色背景圆 ctx.beginPath(); ctx.translate(ctx.width, ctx.height); ctx.arc(0, 0, width / 2 - 10, 0, Math.PI * 2); ctx.lineWidth = 10; var Gradient_Grey = ctx.createLinearGradient(0, 10, width / 2, height); Gradient_Grey.addColorStop("0", "#f0f0f0"); Gradient_Grey.addColorStop("1.0", "#f1f1f1"); ctx.strokeStyle = Gradient_Grey; ctx.stroke(); ctx.closePath(); ////////////////////灰色背景圆 ////////////////////动态圆 ctx.beginPath(); ctx.arc(0, 0, width / 2 - 10, 0, DrawingDegree); ctx.lineWidth = 10; var Gradient_Green = ctx.createLinearGradient(0, 10, width / 2, height); Gradient_Green.addColorStop("0", "#a3da33"); Gradient_Green.addColorStop("1.0", "#56B37F"); ctx.strokeStyle = Gradient_Green; ctx.stroke(); ctx.closePath(); ctx.beginPath(); ctx.arc(width / 2 - 10, 0, 5, 0, Math.PI * 2); ctx.fillStyle = Gradient_Green; ctx.fill(); ctx.closePath(); ////////////////////动态圆 /////////////////小纽扣 ctx.beginPath(); let Position_x = Math.round(Math.sin(DrawingDegree) * (width / 2 - 10)); let Position_y = Math.round(Math.cos(DrawingDegree) * (width / 2 - 10)); //console.log("X:" + Position_x); //console.log("Y:" + Position_y); //console.log(DrawingDegree); ctx.arc(Position_y, Position_x, 12, 0, Math.PI * 2); ctx.fillStyle = "#ffffff"; ctx.shadowOffsetX = 0; ctx.shadowOffsetY = 0; ctx.shadowColor = 'rgba(86,179,127,0.5)'; ctx.shadowBlur = 10; ctx.fill(); ctx.closePath(); ctx.beginPath(); ctx.arc(Position_y, Position_x, 6, 0, Math.PI * 2); ctx.fillStyle = "#56B37F"; ctx.shadowOffsetX = 0; ctx.shadowOffsetY = 0; ctx.shadowColor = 'rgba(86,179,127,0.5)'; ctx.shadowBlur = 14; ctx.fill(); ctx.closePath(); /////////////////小纽扣 //////////// //ctx.save(); ctx.rotate(Math.PI / 2); ctx.font = '52px 微软雅黑'; ctx.fillStyle = '#000' ctx.fillText(this.data.TimeStr, -ctx.measureText(this.data.TimeStr).width * 0.5, 10); ctx.font = '12px 微软雅黑'; ctx.fillStyle = '#808A87'; ctx.fillText("剩余时间", -ctx.measureText("剩余时间").width * 0.5, 36); //////////// /* ctx.beginPath(); ctx.fillStyle = 'rgb(200, 0, 0,0.5)'; ctx.fillRect(0, 0, 251, -16); ctx.closePath(); */ }) }, 同时贴一下电脑和手机的截图: [图片] [图片]
2023-01-13