html52.com
我爱小程序-开发者交流社区

immutable getIn 方法获取值时出现问题,怎么解决?

可复现问题的小程序appId:wxbfc210e5cc711300 或者 wx23cb555e9857db24

复现步骤:进入小程序首页-商品列表-点击任意商品进入商品详情页面,页面空白,加载报错


问题描述:

目前我们代码逻辑层使用了 immutable 这个第三方库,在调用 immutable getIn 方法获取值的时候出现了问题,不确定是否微信基础库升级后不支持这样使用了。

utable 这个第三方库,在调用 immutable getIn 方法获取值的时候出现了问题,不确定是否微信基础库升级后不支持这样使用了。globalData 数据源如下截图:

utable 这个第三方库,在调用 immutable getIn 方法获取值的时候出现了问题,不确定是否微信基础库升级后不支持这样使用了。globalData 数据源如下截图:

globalData 数据源如下截图:

globalData 数据源如下截图:问题1:获取三级字段对象时会出现拿不到的情况,siteId值返回undefind。

问题1:获取三级字段对象时会出现拿不到的情况,siteId值返回undefind。

var state = { globalData: { attr: { siteId:1 } } }

const siteId = state.getIn(['globalData', 'attr', 'siteId'])

const siteId = state.getIn(['globalData', 'attr', 'siteId'])问题2:获取二级对象会直接返回一个普通对象而不是一个 immutable 对象。

问题2:获取二级对象会直接返回一个普通对象而不是一个 immutable 对象。

const attr = state.getIn(['globalData', 'attr'])

const attr = state.getIn(['globalData', 'attr'])这个问题是从上周开始出现的,我们最近没有调整过逻辑代码,似乎是微信基础库最近的变化导致;比较迷惑的是,这个问题一开始在开发者工具下调试时不能

这个问题是从上周开始出现的,我们最近没有调整过逻辑代码,似乎是微信基础库最近的变化导致;比较迷惑的是,这个问题一开始在开发者工具下调试时不能复现,只有在真机微信访问时才会出现,而且个别手机上也复现不了,是否也与微信版本有关系。

能复现的机型:Iphone 13,华为 Nova 7 pro,小米MAX 3,华为P20

个别不能稳定复现的机型:小米10 PRO,有时能复现有时不能

能否请技术人员排查下是刻意设计不支持这种用法了,为什么最近突然不支持,看起来更像是发布正式环境后存在bug?

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付