import { newsPage, saveShareRecord } from '../../api/index' import moment from "moment"; Page({ /** * 页面的初始数据 */ data: { capacity: 10, page: 1, list: [], total: 0, }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { this.getList() }, getList() { newsPage({ capacity: this.data.capacity, page: this.data.page, model: { type: 0 } }) .then(res => { wx.stopPullDownRefresh() if (this.data.page == 1) { this.setData({ list: [] }) } if (this.data.page == res.data.page) { res.data.records.forEach(element => { element.createDate = moment(element.createDate).format("yyyy/MM/DD") }) this.setData({ list: [...this.data.list, ...res.data.records || []], total: res.data.total }) } console.log(this.data) }) }, onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, onReachBottom() { console.log('触底事件'); const { total, list, page } = this.data if (total > list.length) { this.setData({ page: page + 1 }) this.getList() } else { wx.showToast({ title: '暂无更多数据', icon: 'none' }) } }, downfile(e) { const item = e.currentTarget.dataset.index; saveShareRecord(item.id) const files = [] if (item.fileType == 1 && item.fileList && item.fileList.length && item.fileList[0].fileurlFull) { files.push(item.fileList[0].fileurlFull) } if (item.fileType != 1 && item.fileList && item.fileList.length) { item.fileList.forEach(ee => { if (ee.fileurlFull) { files.push(ee.fileurlFull) } }) } if (item.fileType == 1) { this.downloadVideoFileDo(files, item.title) } else { this.downloadImageFileDo(files, item.title) } }, downloadImageFileDo(files, title) { wx.showLoading({ title: '正在下载', mask: true }) let temp = 0; let count = 0; if (files.length) { for (let i = 0; i < files.length; i++) { let filePath = wx.env.USER_DATA_PATH + '/' + new Date().valueOf() + i + '.jpg'; wx.downloadFile({ url: files[i], filePath: filePath, timeout: 180000, success: function (res) { var tempFp = res.filePath wx.saveImageToPhotosAlbum({ filePath: tempFp, success(result) { temp++; count++; if (count == files.length) { wx.hideLoading() } if (temp == files.length) { wx.setClipboardData({ data: title, success: function (res) { wx.getClipboardData({ success: function (res) { wx.showToast({ title: '文案已复制成功,去分享吧' }) } }) } }) } }, fail(err) { count++; if (count == files.length) { wx.hideLoading() } wx.showToast({ title: '图片下载失败哦' }) } }) }, fail(err) { count++; if (count == files.length) { wx.hideLoading() } wx.showToast({ title: '图片下载失败哦' }) } }) } }else{ wx.showToast({ title: '该资讯暂无可分享的图片或视频', icon: 'none' }) } }, downloadVideoFileDo(files, title) { wx.showLoading({ title: '正在下载', mask: true }) let count = 0; if (files.length) { let filePath = wx.env.USER_DATA_PATH + '/' + new Date().valueOf() + '0.mp4'; wx.downloadFile({ url: files[0], filePath: filePath, timeout: 180000, success: function (res) { var tempFp = res.filePath wx.saveVideoToPhotosAlbum({ filePath: tempFp, success(result) { count++; if (count == files.length) { wx.hideLoading() } wx.setClipboardData({ data: title, success: function (res) { wx.getClipboardData({ success: function (res) { wx.showToast({ title: '文案已复制成功,去分享吧' }) } }) } }) }, fail(err) { count++; if (count == files.length) { wx.hideLoading() } wx.showToast({ title: '视频下载失败哦' }) } }) }, fail(err) { count++; if (count == files.length) { wx.hideLoading() } wx.showToast({ title: '视频下载失败哦' }) } }) }else{ wx.showToast({ title: '该资讯暂无可分享的图片或视频', icon: 'none' }) } }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { console.log('下拉刷新') this.setData({ page: 1 }) this.getList() }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })