收藏
回答

wx.createSelectorQuery() 真机无法调用回调

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.createSelectorQuery() 工具 7.0.8 2.9.3
<canvas type="webgl" id="c"></canvas>
wx.createSelectorQuery()
      .select('#c')
      .node()
      .exec((res) => {
        let canvasId = res[0].node._canvasId
        console.log(canvasId)
      })

在工具中,这个api回调可以正常,但是到真机上则无法正常执行

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

10 个回答

  • 小程序技术专员-binnie
    小程序技术专员-binnie
    2019-12-23

    感谢反馈,我们看看

    2019-12-23
    有用
    回复 7
    • 纵有疾风起  人生不言弃
      纵有疾风起 人生不言弃
      2020-01-03
      感谢,跪求尽快修复
      2020-01-03
      回复
    • 杨楠
      杨楠
      2020-06-02
      半年了,仍然没有解决?
      2020-06-02
      回复
    • bico
      bico
      2020-09-08
      现在是2020-09-08,用最新的库,预览能回调,真机调试还是不行。
      2020-09-08
      回复
    • 永彬
      永彬
      2020-09-19
      貌似只是不能调试,预览可以用的
      2020-09-19
      回复
    • 永彬
      永彬
      2020-09-19
      貌似只是不能调试,预览可以用的
      2020-09-19
      回复
    查看更多(2)
  • 社区技术运营专员-娇华
    社区技术运营专员-娇华
    2019-11-14

    指的是这个真机调试是么?预览正常是么?

    2019-11-14
    有用
    回复 7
    查看更多(2)
  • 也无风雨也无晴
    也无风雨也无晴
    2020-11-06

    想问下,真机测试还是不行,请问上线以后会报错吗,还是这个api不能用于线上,只能用于开发者工具看着玩的

    2020-11-06
    有用
    回复
  • 青蛙2009
    青蛙2009
    2020-10-18

    我也是搞了好久,后来发现貌似只是真机调试会报错,真机预览并不会报错

    2020-10-18
    有用
    回复
  • kenvs佳
    kenvs佳
    2020-07-06

    我也遇到了,华为荣耀9,预览可以,真机调试不行。现在这个bug修复了吗?

    2020-07-06
    有用
    回复
  • 杨楠
    杨楠
    2020-06-05

    这个Bug还没修复吗?



    2020-06-05
    有用
    回复
  • cop
    cop
    2020-04-28

    我也遇到此类问题了。公司里几个同事的手机测试均不能用。于是我下载了这个demo进行测试https://github.com/yannliao/threejs-example-for-miniprogram

    结果还是不行。问题出在此处,

    2020-04-28
    有用
    回复
  • 松子
    松子
    2020-04-24

    iphonex系列也是这个问题 ,求高人指点

    2020-04-24
    有用
    回复
  • 木子李
    木子李
    2020-01-15

    当type ='2d'时 微信版本7.0.4 时上面代码片段的exec回调不执行,

    2020-01-15
    有用
    回复 1
    • 木子李
      木子李
      2020-01-15
      预览模式下不执行,开发工具会执行
      2020-01-15
      回复
  • 陈冲
    陈冲
    2019-12-24

    我也遇到相同问题

    wxml
    <canvas id="rafCanvas" type="2d" style="display:none;"></canvas>
    ts
    onLoad(options) {
        const eventChannel = this.getOpenerEventChannel();
        // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
        eventChannel.on('acceptDataFromOpenerPage', (data: { path: string; size: number }) => {
          // 通过 SelectorQuery 获取 Canvas 节点
          wx.createSelectorQuery()
            .select('#rafCanvas')
            .fields({
              node: true,
            })
            .exec(res => {
              canvas = res[0].node;
              wx.getSystemInfo({
                success: res => {
                  this.setData({
                    windowHeight: res.windowHeight,
                    windowWidth: res.windowWidth,
                    pixelRatio: res.pixelRatio,
                  });
                  this.analysis(data);
                },
                fail: err => {
                  console.log(err);
                },
              });
            });
        });
      },
    

    2019-12-24
    有用
    回复 4
    • 小程序技术专员-Eric
      小程序技术专员-Eric
      2020-01-06
      看到你这里设置了 display: none ,这个会导致后续流程走不通,我们正在修复。你可以试下去掉 display: none 改用其他方式(比如定位在屏幕外)隐藏看是否能获取到。
      2020-01-06
      回复
    • 陈冲
      陈冲
      2020-01-06回复小程序技术专员-Eric
      是的,是这里导致的问题,我目前将元素定外到屏幕外,能满足当前需求
      2020-01-06
      回复
    • ?
      2020-08-11回复陈冲
      你真机上exec正常吗
      2020-08-11
      回复
    • ?
      2020-08-11回复小程序技术专员-Eric
      真机exec仍未解决啊 已经九个月了
      2020-08-11
      回复
登录 后发表内容
问题标签