收藏
回答

data中的数组,取出后,经过unshift()加入元素后,不用setData就直接写入了

框架类型 问题类型 终端类型 微信版本 基础库版本
小程序 Bug 工具 8.0.0 2.14.1

点击“点击测试”按钮,可以在控制台看到,arr在unshift后,没有setData,但已经被存入data里面了

回答关注问题邀请回答
收藏

3 个回答

  • Mr.Zhao
    Mr.Zhao
    2021-03-04

    跟unshift没关系。setData是触发页面更新的

    2021-03-04
    有用 2
    回复
  • 一直在,
    一直在,
    2021-03-04

    小程序赋值操作除了this.setData() 之外,this.data.arr = xxx也可以

    let arr = this.data.arr
    arr.unshift("aaa")
    等于
    this.data.arr = this.data.arr.unshift("aaa")
    等于
    this.data.arr.unshift("aaa")
    

    虽然都是赋值操作,但setData 函数用于将数据从逻辑层发送到视图层,同时改变对应的 this.data 的值。后者只是简单的赋值操作

    2021-03-04
    有用 1
    回复
  • 跨商通
    跨商通
    2021-03-04

    谢邀。

    this.data.xxx.unshift()这个不会渲染页面;

    this.setData()这个会渲染。

    2021-03-04
    有用
    回复
登录 后发表内容
问题标签