可复现问题的小程序appId:wxbfc210e5cc711300 或者 wx23cb555e9857db24
复现步骤:进入小程序首页-商品列表-点击任意商品进入商品详情页面,页面空白,加载报错
问题描述:
目前我们代码逻辑层使用了 immutable 这个第三方库,在调用 immutable getIn 方法获取值的时候出现了问题,不确定是否微信基础库升级后不支持这样使用了。
globalData 数据源如下截图:
问题1:获取三级字段对象时会出现拿不到的情况,siteId值返回undefind。
var state = { globalData: { attr: { siteId:1 } } }
const siteId = state.getIn(['globalData', 'attr', 'siteId'])
问题2:获取二级对象会直接返回一个普通对象而不是一个 immutable 对象。
const attr = state.getIn(['globalData', 'attr'])
这个问题是从上周开始出现的,我们最近没有调整过逻辑代码,似乎是微信基础库最近的变化导致;比较迷惑的是,这个问题一开始在开发者工具下调试时不能复现,只有在真机微信访问时才会出现,而且个别手机上也复现不了,是否也与微信版本有关系。
能复现的机型:Iphone 13,华为 Nova 7 pro,小米MAX 3,华为P20
个别不能稳定复现的机型:小米10 PRO,有时能复现有时不能
能否请技术人员排查下是刻意设计不支持这种用法了,为什么最近突然不支持,看起来更像是发布正式环境后存在bug?