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

关于setData对象或者数组的问题

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 需求 工具 6.6.7 2.1.3

如果data中有对象或者数组,该如何setData?

比如:

Page({

    data: {

        m_obj: {'a': {'num': 0}, ...},

    }

    click: function() {

        let obj = this.data.m_obj;   // A

/***modify obj***/               // B

        this.setData({

             m_obj: obj,                   // C

        });

    }

})

我想整体替换obj变量,上述代码是否有问题? 官方文档中说不能直接操作data中的变量,否则会造成数据不一致,那么上述代码中的A和B是否就会造成代码不一致?如果是的话,我该如何修改整个对象呢(整体替换而不是对每个属性set一次)?


网友回复

卢霄霄:

给 this.data赋值之后,立即有setData是不会有问题的

望记:

官方说的应该是不直接修改 this.data,用setData应该没啥问题吧

评论 抢沙发

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

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

云免签H5支付