以下是一个简单的微信小程序音乐播放应用的代码示例,包括首页、音乐列表、音乐播放页面等。
首先,创建一个新的微信小程序项目,然后在 app.json 文件中配置页面和导航栏样式:
{
"pages": [
"pages/index/index",
"pages/music_list/music_list",
"pages/music_player/music_player"
],
"window": {
"navigationBarTitleText": "音乐播放"
}
}
然后,创建首页 index 页面,用于显示音乐列表和导航到音乐播放页面。
在 pages/index/index.wxml 文件中,添加一个按钮用于导航到音乐列表页面:
<view class="container">
<button class="btn" bindtap="goToMusicList">查看音乐列表</button>
</view>
在 pages/index/index.js 文件中,添加 goToMusicList
方法来导航到音乐列表页面:
Page({
goToMusicList: function() {
wx.navigateTo({
url: '/pages/music_list/music_list'
})
}
})
接下来,创建音乐列表页 music_list 页面,用于显示音乐列表,并点击音乐项导航到音乐播放页面。
在 pages/music_list/music_list.wxml 文件中,添加一个音乐列表:
<view class="container">
<scroll-view class="list" scroll-y>
<view class="item" bindtap="goToMusicPlayer" wx:for="{{ musicList }}" wx:key="index">
<image src="{{ item.cover }}" class="cover"></image>
<text class="title">{{ item.title }}</text>
<text class="artist">{{ item.artist }}</text>
</view>
</scroll-view>
</view>
在 pages/music_list/music_list.js 文件中,添加 goToMusicPlayer
方法来导航到音乐播放页面,并传递选中的音乐项数据:
Page({
goToMusicPlayer: function(e) {
var musicData = e.currentTarget.dataset.music;
wx.navigateTo({
url: '/pages/music_player/music_player?musicData=' + JSON.stringify(musicData)
})
}
})
然后,创建音乐播放页 music_player 页面,用于播放选中的音乐。
在 pages/music_player/music_player.wxml 文件中,添加音乐播放器和控制按钮:
<view class="container">
<image src="{{ musicData.cover }}" class="cover"></image>
<text class="title">{{ musicData.title }}</text>
<text class="artist">{{ musicData.artist }}</text>
<audio id="audio" src="{{ musicData.src }}" controls></audio>
<button bindtap="playMusic">播放</button>
<button bindtap="pauseMusic">暂停</button>
</view>
在 pages/music_player/music_player.js 文件中,添加 playMusic
和 pauseMusic
方法来控制音乐的播放和暂停:
Page({
playMusic: function() {
var audio = wx.createAudioContext('audio');
audio.play();
},
pauseMusic: function() {
var audio = wx.createAudioContext('audio');
audio.pause();
},
onLoad: function(options) {
this.setData({
musicData: JSON.parse(options.musicData)
});
}
})
最后,为了展示一个简单的音乐列表,可以在 app.js 文件中定义一个全局的音乐列表变量,并在 app.js 的 onLaunch 生命周期中初始化音乐列表数据:
App({
globalData: {
musicList: [
{
title: '歌曲1',
artist: '歌手1',
cover: 'cover1.jpg',
src: 'music1.mp3'
},
{
title: '歌曲2',
artist: '歌手2',
cover: 'cover2.jpg',
src: 'music2.mp3'
},
{
title: '歌曲3',
artist: '歌手3',
cover: 'cover3.jpg',
src: 'music3.mp3'
}
]
},
onLaunch: function() {
// TODO: 初始化音乐列表数据
}
})
以上就是一个简单的微信小程序音乐播放应用的代码示例。