收藏
回答

Kbone canvas有关问题?

想拿到 canvas画出一张图

但试了好几种方法都不行

————————————

    <canvas
      id="mycanvas"
      canvas-id="mycanvas"
      class="myc"
      width="400"
      height="300"
      style="border: 1px solid red;"
    ></canvas>

11111111 用最常用的DOM方法获取不到

222222222222 注意到提示,想到扩展API,但是报错

333333333333 用Kbone-API调用报错(这个意料之中)

4444444 这个方法能拿到一个 CanvasContext,但没法绘图?!

这个怎么解,那个 canvas.$$prepare 扩展API 是不是为兼容WEB端设计的啊,我只想小程序端先跑通

难道Kbone必须用 canvas.$$prepare才能跑通啊

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

2 个回答

  • Mr.Zhao
    Mr.Zhao
    2020-05-04

    小程序没dom。

    2020-05-04
    有用 1
    回复 3
    • @梦翔
      @梦翔
      2020-05-04
      这个方法用了,在Kbone里,但画不出来,但又需要用Kbone
       太凉了
      2020-05-04
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-05-04回复@梦翔
      2020-05-04
      1
      回复
    • @梦翔
      @梦翔
      2020-05-04回复Mr.Zhao
      噜噜噜
      2020-05-04
      回复
  • @梦翔
    @梦翔
    2020-05-04
    document.querySelector('#mycanvas').$$getContext().then(ctx => {
      console.log(ctx)
      //绘制
    
    }).catch(e => {console.log(e)})
    

    前人经验

    以上方法ok

    2020-05-04
    有用
    回复 3
    • 葭叮柳
      葭叮柳
      2020-05-19
      使用这种方法会报$$getContext()为空的,是怎么回事呢
      2020-05-19
      回复
    • @梦翔
      @梦翔
      2020-05-21回复葭叮柳
      1. 确定是按以上代码写的    id是否正确


      2.可以换种方法(具体看文档)
      --这个$$getContext()不是唯一方法
      --还有 binnie smile上面那个图中的$$getNodesRef()
      --我觉得canvas.$$prepare很好用


      https://wechat-miniprogram.github.io/kbone/docs/domextend/#canvas-prepare




      3.我的canvas标签是这么写的(有时候不指定type属性不行)
      2020-05-21
      回复
    • 苏俊洋
      苏俊洋
      2020-09-16回复@梦翔
      2020-09-16
      回复
登录 后发表内容
问题标签