收藏
回答

canvas放在自定义组件中,再去调用自定义组件canvas不绘制?

canvas放在自定义组件中,再在page中使用该自定义组件,canvas绘制不出来

回答关注问题邀请回答
收藏

4 个回答

  • 那一年
    那一年
    2020-07-31

          

    这个是component.wxml

    和component.wxss

        

    2020-07-31
    有用 1
    回复 3
    • 雷火🔥
      雷火🔥
      2020-07-31
      请将wxml里的type=“2d”,去掉即可,因为你js文件获取canvasContext 不是2d的获取方式,目前小程序推荐使用2d,你可以参考2d类型的新用法,你是新手一枚吧
      2020-07-31
      回复
    • 那一年
      那一年
      2020-07-31回复雷火🔥
      对,刚玩,感谢,最开始没加,看到推荐加我就加了,现在可以了,万分感谢大佬
      2020-07-31
      回复
    • 雷火🔥
      雷火🔥
      2020-07-31回复那一年
      好的,解决就好,给我点个赞吧
      2020-07-31
      2
      回复
  • 雷火🔥
    雷火🔥
    2020-07-31

    请上代码,应该不是你说的问题,canvas放到自定义组件是可以绘制的,我目前有个项目都是在自定义组件完成的

    2020-07-31
    有用 1
    回复 7
    • 那一年
      那一年
      2020-07-31
      // component.js  初始化画布
          initCanvas: function () {
            console.log("initcanvas")
            let ctx = wx.createCanvasContext('can-dashboard',this); //将当前自定义组件的 this 传递过去
            //填充背景色
            let grd = ctx.createLinearGradient(0, 0, 0, 380)
            grd.addColorStop(0, '#00f');
            grd.addColorStop(0.2, '#0f0');
            grd.addColorStop(0.4, '#f00');
            grd.addColorStop(0.6, '#0ff');
            grd.addColorStop(0.8, '#f0f');
            grd.addColorStop(1, '#ff0');
            ctx.setFillStyle(grd);
            //填充
            ctx.fillRect(0, 0, 300, 300);
            //画
            ctx.draw();
            //背景色画好了,可以获取其他信息了
          },


      //component.wxml
       
         
           不支持canvas
       

       


      //调用 page.wxml

      //调用 page.js
      this.selectComponent("#cus-canvas").initCanvas();


      json中也声明了,确实调到initCanvas()方法了,但canvas没反应
      2020-07-31
      回复
    • 雷火🔥
      雷火🔥
      2020-07-31
      wxml 文件也请给我截图,
      2020-07-31
      回复
    • 雷火🔥
      雷火🔥
      2020-07-31
      你这个方法是在什么时候执行的?
      2020-07-31
      回复
    • 雷火🔥
      雷火🔥
      2020-07-31回复那一年
      wxml截图
      2020-07-31
      回复
    • 那一年
      那一年
      2020-07-31
      稍等,写了一堆,怎么都丢了
      2020-07-31
      回复
    查看更多(2)
  • 谋谋谋
    谋谋谋
    2020-07-31

    可以的 我就是在组件里玩的

    2020-07-31
    有用
    回复
  • 苏军
    苏军
    2020-07-31

    不行那是你代码写的有问题,自定义组件用canvas可以正常使用。

    2020-07-31
    有用
    回复
登录 后发表内容
问题标签