data里面定义的数组的值无法
发布于 6 年前 作者 qiangfeng 8810 次浏览 来自 问答

现在遇到一个问题,有如下页面

js文件:

data{

arrayTest:[]

}

onLoad:function(){

    var _this=this

    _this.data.arrayTest[0]=“1”

}

wxml文件:

<view>{{arrayTest[0]}}</view>

数据无法在页面显示,但是使用console.log(_this.data.arrayTest[0])是有值的;如果将arrayTest直接赋值是可以显示值的;将arrayTest设置为空,再另外设置一个数组放入arrayTest也是可以显示值的。是本身的机制问题吗?不过不是,该怎么显示值呢?

3 回复

可以尝试:

// 方法 1
_this.setData({
  'arrayTest[0]': '1'
})
 
// 方法 2

const newArray = _this.data.arrayTest.slice()

newArray[0] = '1'

_this.setData({
  arrayTest: newArray
})

而不要直接赋值。

去弄清楚页面声明周期,加载的生命周期事件顺序

https://image.wxopen.club/content_81a6d3b6-3849-11ea-8f8b-001a7dda7111.png

进这个页面,搜索 setData,文档里写的很清楚哦

回到顶部