const { api } = require("../../utils/api") // pages/garden/index.js Page({ /** * 页面的初始数据 */ data: { list: [], timer: null, name: '', leftList: [], rightList: [], leftHeight: 0, rightHeight: 0, hotList:[] }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { this.fetchList() }, fetchList() { api('/plant/page', 'POST', { current: 0, pageSize: 999, name: this.data.name }, 'json').then(res => { if (res.code == 200) { if (res.data === null) { return } if (res.data.list.length === 0) { this.fetchHotList() return } this.setData({leftList:[],rightList:[]}) const tmps = res.data.list.map(e => { e.pic = e.imgList[0].url e.cover = e.imgList[0] return e }) this.addItems(tmps) this.setData({ list: tmps }) } }) }, fetchHotList(){ api('/library/list','POST',{isHot:0,current:0,pageSize:6},'json').then(res => { if (res.code === 200){ const data = res.data.list.map(e => { e.pic = e.imgList[0].url return e }) this.setData({hotList:data}) } }) }, addItems(newItems) { let h1 = 0; let h2 = 0; newItems.forEach((item,index) => { // 动态获取图片尺寸 if (index % 2 === 0) { this.data.leftList.push(item); h1 += item.cover.height / item.cover.width; } else { this.data.rightList.push(item); h2 += item.cover.height / item.cover.width; } this.setData({ leftList: this.data.leftList, rightList: this.data.rightList, }); }); }, goInfo(e){ console.log(e); const id = e.currentTarget.dataset.id wx.navigateTo({ url: '../garden/info?id=' + id, }) }, onchange(e) { const value = e.detail.value if (this.data.timer != null) { clearTimeout(this.data.timer) } this.data.timer = setTimeout(() => { this.setData({ name: value }) this.fetchList() }, 500) }, goAdd() { wx.navigateTo({ url: '../add/index', }) }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })