微信小游戏Bug反馈,报错 Cannot read property 'debug' of undefined

开放数据域中的这个settings打印了一下,是个undefined,那下边读取 settings.debug 肯定会报debug找不到呀

@panda @jare

麻烦给我看下你的相关功能代码。

主域代码片段

   if (kunpo.Platform.isWX) {
        let view = new cc.Node("ranking_view")
        view.setContentSize(width, height)
        view.setPosition(0, 0)
        view.setAnchorPoint(0, 1)
        view.addComponent(cc.SubContextView)
        view.parent = box.node
    }
    sendOpenDataMessage('show_rankinglist', {'width': width, 'height': height})

static sendOpenDataMessage(message: string, args?: {[key: string]: any}) {
    if(!kunpo.Platform.isWX) return
    let data =  { message: message }
    if (args) {
        for (const key in args) {
            data[key] = args[key]
        }
    }
    console.log("发送数据到开放域:", data);
    window.wx.getOpenDataContext().postMessage(data);
}

开放域代码片段 (很简单,就一个接收消息,切换场景的代码)

wx.onMessage( (data) => {
let message = data.message
if (message == “show_rankinglist”) {
// 打开排行榜界面
this.height = data.height
this.width = data.width
cc.director.loadScene(“LevelRankScene”)
}
}

上边提供了

好的,我找时间验证下。

1赞

有结果了吗大佬?

我们这边在重新刷新页面后也有同样的问题,发现subcontext只能全局存在,销毁后再创建就会有这个错误

1赞

如果不能重新创建的话,那有多个开放域界面的时候,排版不太好做
这个问题能修复吗? 还是说这个是微信那边的限制?