小程序
小游戏
企业微信
微信支付
扫描小程序码分享
https://developers.weixin.qq.com/miniprogram/analysis/experience/sdk/api.htmlhttps://developers.weixin.qq.com/miniprogram/analysis/experience/sdk/api.html
文档中说可以调用 wx.obs.xxx 方法,我试了开发者工具上和真机上 wx.obs 都是 undefined
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
破案了,是使用的Uniapp 把obs对象移除了
// 问题:wx.obs 是一个对象,既不是函数,也不在白名单中,所以被过滤掉了。 // uni-app 在初始化时会对原生 wx 对象进行封装: // 原代码逻辑 const objectKeys = ['qy', 'env', 'error', 'version', ...]; // 白名单 function isWxKey(key) { // 只允许:1) 在白名单中 2) 是函数 return objectKeys.indexOf(key) > -1 || typeof wx[key] === 'function'; } function initWx() { const newWx = {}; for (const key in wx) { if (isWxKey(key)) { newWx[key] = wx[key]; // 只复制符合条件的属性 } } globalThis.wx = newWx; // 替换全局 wx return newWx; }
解决方式:通过patch方式将 obs 扩展到这段源码中
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
本回答由AI生成,可能已过期、失效或不适用于当前情形,请谨慎参考
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
破案了,是使用的Uniapp 把obs对象移除了
// 问题:wx.obs 是一个对象,既不是函数,也不在白名单中,所以被过滤掉了。 // uni-app 在初始化时会对原生 wx 对象进行封装: // 原代码逻辑 const objectKeys = ['qy', 'env', 'error', 'version', ...]; // 白名单 function isWxKey(key) { // 只允许:1) 在白名单中 2) 是函数 return objectKeys.indexOf(key) > -1 || typeof wx[key] === 'function'; } function initWx() { const newWx = {}; for (const key in wx) { if (isWxKey(key)) { newWx[key] = wx[key]; // 只复制符合条件的属性 } } globalThis.wx = newWx; // 替换全局 wx return newWx; }解决方式:通过patch方式将 obs 扩展到这段源码中