157 lines
3.0 KiB
JavaScript
157 lines
3.0 KiB
JavaScript
// pages/garden/record.js
|
|
const {
|
|
api
|
|
} = require("../../utils/api")
|
|
import {
|
|
getNavLayout
|
|
} from '../../utils/util'; // 引入工具函数
|
|
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
id: '',
|
|
list: [],
|
|
picList: [],
|
|
current: 0,
|
|
info: null,
|
|
innerAudioContext: null,
|
|
backButtonStyle: ''
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(options) {
|
|
this.setData({
|
|
current: options.current,
|
|
id: options.id
|
|
})
|
|
this.fetchList()
|
|
this.playMusic()
|
|
// 一行代码搞定计算
|
|
const layout = getNavLayout();
|
|
this.setData({
|
|
backButtonStyle: layout.containerStyle
|
|
});
|
|
|
|
},
|
|
|
|
playMusic() {
|
|
this.data.innerAudioContext = wx.createInnerAudioContext({
|
|
useWebAudioImplement: true,
|
|
loop: true,
|
|
volume: 0.2
|
|
})
|
|
const list = [
|
|
'https://res.catter.cn/pub/2025/12/17/20251217113514284.mp3',
|
|
'https://res.catter.cn/pub/2025/12/17/20251217151719823.mp3',
|
|
'https://res.catter.cn/pub/2025/12/17/20251217151806179.mp3',
|
|
'https://res.catter.cn/pub/2025/12/17/20251217152125210.mp3',
|
|
'https://res.catter.cn/pub/2025/12/17/20251217152206612.mp3'
|
|
]
|
|
const randomIndex = Math.floor(Math.random() * list.length);
|
|
|
|
// 3. 赋值给 src
|
|
this.data.innerAudioContext.src = list[randomIndex];
|
|
|
|
},
|
|
|
|
fetchList() {
|
|
const params = {
|
|
current: 1,
|
|
pageSize: 999,
|
|
id: this.data.id,
|
|
keyword: ''
|
|
}
|
|
api('/plant/grow/recordList', 'POST', params, 'json').then(res => {
|
|
if (res.code === 200) {
|
|
const tmps = res.data.list.map(e => {
|
|
e.createdAtStr = e.createdAtStr.substring(0, 10)
|
|
e.pic = e.imgList[0].url
|
|
return e
|
|
})
|
|
const picList = tmps.map(e => e.pic)
|
|
this.setData({
|
|
list: tmps,
|
|
picList: picList,
|
|
info: tmps[0]
|
|
})
|
|
}
|
|
})
|
|
},
|
|
|
|
goPreview(e) {
|
|
const index = e.detail.index
|
|
const currentUrl = this.data.picList[index]
|
|
const list = this.data.picList
|
|
wx.previewImage({
|
|
current: currentUrl, // 当前显示图片的http链接
|
|
urls: list // 需要预览的图片http链接列表
|
|
})
|
|
},
|
|
|
|
goBack() {
|
|
wx.navigateBack()
|
|
},
|
|
|
|
change(e) {
|
|
const current = e.detail.current
|
|
const info = this.data.list[current]
|
|
this.setData({
|
|
current: current,
|
|
info: info
|
|
})
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面初次渲染完成
|
|
*/
|
|
onReady() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面显示
|
|
*/
|
|
onShow() {
|
|
this.data.innerAudioContext.play()
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面隐藏
|
|
*/
|
|
onHide() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面卸载
|
|
*/
|
|
onUnload() {
|
|
this.data.innerAudioContext.destroy() // 释放音频资源
|
|
},
|
|
|
|
/**
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
*/
|
|
onPullDownRefresh() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面上拉触底事件的处理函数
|
|
*/
|
|
onReachBottom() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 用户点击右上角分享
|
|
*/
|
|
onShareAppMessage() {
|
|
|
|
}
|
|
}) |