selectAll() 这个方法是异步的吧
异步了 配合 async await 方可解决
不太理解,截图Storage看看
你上面是异步拿到值然后同步存。下面内容同步取(每次都会先走)。然后第一次没有内容(因为没存上已经取了)。第二次取会拿到第一次存的(上次存上了,第二次没存上)。第三次取会拿到第二次存的(取到第二次存的,第三次没存上)。
onLoad: async function() {
await function(){
return new Promise((rs, rj) => {
var query = wx.createSelectorQuery()
query.select(‘.test’).boundingClientRect()
query.exec(res=> {
wx.setStorageSync(‘a000’, res)
rs(res)
})
}()
console.log(wx.getStorageSync(‘a000’))
}