💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
### index-detail.js #### 初始數據設置 ``` const local = require("../../../data/local"); const app = getApp(); Page({ data: { // 音乐的播放状态 isPlay: false, collected: false, shared:false, }, onLoad: function (options) { //聲明id存放options的id值,用以在postList中取到對應頁面的數據内容 var id = options.id; var data = local.postList[options.id]; this.setData({ data, postId: id, music: local.postList[options.id].music }); console.log(data) ``` #### 退出当前界面后再进入时的音乐播放状态监听 ``` this.onMusic(); // 进入页面退出页面音乐播放按钮一致 if (app.globalData.g_isPlay && app.globalData.g_currentId == id) { this.setData({ isPlay: true }); } ``` #### 收藏设置 ``` // 缓存 let allCollected = wx.getStorageSync('allCollected'); //有缓存取值就更新缓存,没有就设置缓存 if (allCollected) { let storageCollected = allCollected[id]; if (storageCollected) { //index-detail页面是每篇文章的详情页面,id值已经确定 this.setData({ collected: storageCollected //将当前页面的收藏状态赋给collected }) } } else { let allCollected = { }; //如果没有缓存则先创建一个allCollected对象 allCollected[id] = false; //将当前文章详情页面的收藏状态设置为未收藏 wx.setStorageSync('allCollected', allCollected); //将定义的allCollected内容更新到缓存allCollected中去 } }, ``` #### 音乐播放状态具体函数 ``` // 监听音乐播放 onMusic() { var self = this; //背景音樂播放則設置isPlay屬性值為true,g_isPlay屬性值為true,g_currentId存放當前模塊的id wx.onBackgroundAudioPlay((result) => { self.setData({ isPlay: true }); app.globalData.g_isPlay = true; app.globalData.g_currentId = self.data.postId; }); //背景音樂暫停,同上設置相印屬性值 wx.onBackgroundAudioPause((result) => { self.setData({ isPlay: false }) app.globalData.g_isPlay = false; app.globalData.g_currentId = null; }); //背景音樂停止播放,即播放彈窗被關閉 wx.onBackgroundAudioStop((result)=>{ self.setData({ isPlay:false }); app.globalData.g_isPlay = false; }); }, ``` #### 自定義播放音樂函數 ``` // 点击音乐播放 playMusic() { var self = this; /*執行播放音樂函數時,如果isPlay值為true即正在播放,則執行stopBackgroundAudio()停止播放,更改相關參數值*/ if (this.data.isPlay) { wx.stopBackgroundAudio(); this.setData({ isPlay: false }); } //如果沒有播放則調用playBackgroundAudio函數播放該音樂,找到該音樂的地址、標題,並更換封面圖片 else { wx.playBackgroundAudio({ dataUrl: self.data.music.url, title: self.data.music.title, coverImgUrl: self.data.music.coverImgUrl }); this.setData({ isPlay: true }); } }, ``` #### 收藏设置 ``` onCollect() { var allCollected = wx.getStorageSync('allCollected'); //从缓存中获取allCollected的值 var storageCollected = allCollected[this.data.postId]; //找到对应文章的状态值存入自定义量storageCollected之中 storageCollected = !storageCollected; //执行点击事件所以要进行storageCollected状态值变换以切换图片 allCollected[this.data.postId] = storageCollected; //将取反后的新状态值写入对应的allCollected里 wx.setStorageSync("allCollected", allCollected); //在缓存中写入更新后的数据 this.setData({ collected: storageCollected }) //将当前页面的收藏状态赋给collected }, ``` #### 分享设置 ``` onShare() { wx.showActionSheet({ itemList: ["分享到微信", "分享到微博", "分享到朋友圈", "分享到Rela"], itemColor: '#405f80', //点击分享成功后shared状态改变,否则不改变 success: res => { //此处写箭头函数那么下面this不用再定义成self console.log(res.tapIndex) this.setData({ shared: true }) }, fail: err => { this.setData({ shared: false }) } }) } }) ```