收藏
回答

this.setData的性能问题

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 需求 setData 客户端 最新 2.5.1

that.setData({

'cardData.id': editCardData.id,

'cardData.name': editCardData.name,

'cardData.mobile': editCardData.phone,

'cardData.email': editCardData.email,

'cardData.cardStyle': editCardData.card_style,

'cardData.company': editCardData.company,

'cardData.title': editCardData.title, ...

}) 和

that.setData({

cardData: editCardData, //大对象

}) 请问这两个有区别么,哪个更好?


最后一次编辑于  2019-01-29
回答关注问题邀请回答
收藏

12 个回答

  • LastLeaf
    LastLeaf
    2019-01-31

    这个是看你设置的实际内容的。如果第一种只是把第二种大对象的所有子字段拆开来写,那没有区别的……


    如果你只是想设 cardData 下很小的一部分,第一种才会比较好。

    2019-01-31
    有用 1
    回复 1
    • LastLeaf
      LastLeaf
      2019-01-31

      补充:除非你真的要求很严苛,要不然没有必要考虑这样做优化。

      2019-01-31
      回复
  • 管凯旋
    管凯旋
    2019-01-29

    多无聊才会拆成第一种写法,时间不要钱吗

    2019-01-29
    有用 9
    回复
  • 2019-02-01

    如果你只更新第一种里的一两个,选第一种,你要更新那么多,第二种吧,就算第一种快我也选第二种,嫌累得慌

    2019-02-01
    有用 1
    回复
  • 微盟
    微盟
    2019-01-29

    选择第二种,从后台取到的数据会放在一个对象里面,方便做渲染和数据操作

    2019-01-29
    有用 1
    回复
  • Jimmy
    Jimmy
    2019-01-29

    单从代码体积来看,我会毫不犹豫用 第二种

    2019-01-29
    有用 1
    回复
  • 七星顶的椰果
    七星顶的椰果
    2019-02-03

    php最大的动力是什么哈?

    2019-02-03
    有用
    回复
  • 我是一颗跳跳糖
    我是一颗跳跳糖
    2019-02-02

    写那么多代码不累吗

    2019-02-02
    有用
    回复
  • 肩上蝶
    肩上蝶
    2019-02-02

    单元测试写到想哭,许多方法测试不到,覆盖率。。。然后只能提取到service,but一堆要来回setData的数据。。。

    2019-02-02
    有用
    回复
  • mier
    mier
    2019-02-02

    this.setData( { cardData: Object.assign( {}, cardData, editCardData) } )

    2019-02-02
    有用
    回复 1
    • mier
      mier
      2019-02-02

      我觉得这样更好点

      2019-02-02
      回复
  • 卢
    2019-02-02

    果断第二种,修改里面的某些值还不如for循环遍历下来得快

    2019-02-02
    有用
    回复

正在加载...

登录 后发表内容