HONOR KNT-AL10
Android 6.0
目前不知如何复现,小程序正常使用情况下,有机率发生如下错误:
appServiceSDKScriptError TypeError: Cannot read property '__wxWebviewId__' of undefined; at wx.createSelectorQuery X5JsCore:48:14266 Function.i X5JsCore:43:7757 Object.createSelectorQuery X5JsCore:3031:842 Function.e X5JsCore:42:13773 X5JsCore:47:7186 |
疑似发生在内核
function (e, t, n) { Object.defineProperty(t, "__esModule" , { value: !0 }), t.createSelectorQuery = void 0; var r = n(163), o = function (e) { return e && e.__esModule ? e : { default : e } }(r), i = function (e) { var t = null ; if (e && e.page) t = e.page.__wxWebviewId__; else { var n = getCurrentPages(); t = n[n.length - 1].__wxWebviewId__ } return new o. default (t) }; t.createSelectorQuery = i } |
请问什麽情况下会发生,要如何避免这个错误,谢谢
对的。因为 observer 触发时机可能在 attached 和 ready 之前。
你好,旧的基础库版本中确实有可能发生这样的问题。还有一种可能的情况是,用户退出小程序,而小程序还在后台运行,此时调用会有这样的问题。getCurrentPages() 查下页面栈可以规避这个问题。
自定义组件在properties的observer的方法里
wx.createSelectorQuery( ).in(this)
.boundingClientRect(function(res){
// console.log(res)
}).exec( )
必复现
wx.createSelectorQuery( ).in(this)出问题,应该是this作用域为空
vue3中使用getCurrentInstance()代替了this
有个异常,但好像也没啥影响
我在observer的方法里判断已ready才查dom,就没有报错了
发生在开启某个字定义组建后,很小机率会发生