在微信小程序中,数组 word_list 里面有八个元素(每个元素是对象);使用this.setData({}) 想向该数组里面添加一个元素;添加元素后数组word_list 是改变了,但是页面没有重新渲染,具体原因可能与vue中改变数组页面不渲染的情况类似;
具体办法:
// 获取数组
let leave_word_list = this.data.leaveWordList;
let long = leave_word_list.length;
// 创建对象
let obj = {
id: long,
name: '李老师',
date: getTime(),
word: this.data.textareaVal,
imgurl: ['../static/img/iconPark-folder-void@2x.png',
'../static/img/iconPark-folder-void@2x.png'
]
}
// 强制改变获取的数组
leave_word_list.splice(0,0,obj);
// 使用setData重新渲染页面,改变视图层
this.setData({
leaveWordList: leave_word_list
})