代码拉取完成,页面将自动刷新
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
ul li.active{
background-color:deepskyblue;
}
</style>
</head>
<body>
<div id="app">
<!--绑定计算属性的方法getCurrentSongSrc-->
<!--页面一加载立马调用getCurrentSongSrc方法-->
<audio autoplay controls v-bind:src='getCurrentSongSrc'></audio>
<ul>
<li v-for="(item,index) in musicData" @click='clickHandler(index)' :class='{active:initIndex==index}'>
<h3>{{item.id}} - 歌名:{{item.name}}</h3>
<p>歌手:{{item.author}}</p>
</li>
</ul>
</div>
</body>
<script type="text/javascript" src="js/vue.min.js">
</script>
<script type="text/javascript">
var musicData = [{
id: 1,
name: '将故事写成我们',
author: '林俊杰',
songSrc: './static/将故事写成我们-林俊杰.mp3'
},
{
id: 2,
name: '像我这样的人',
author: '胖胖胖',
songSrc: './static/胖胖胖 - 像我这样的人.mp3'
},
{
id: 3,
name: '世间美好与你环环相扣 (薛之谦粉丝版)',
author: '韦小力',
songSrc: './static/韦小力 - 世间美好与你环环相扣 (薛之谦粉丝版).mp3'
},
{
id: 4,
name: '爱相随 (Live)',
author: '周华健',
songSrc: './static/周华健 - 爱相随 (Live).mp3'
},
]
new Vue({
el:'#app',
data(){
return {
musicData: musicData,
initIndex:0,
style:false,
}
},
// 计算属性实时监听musicData和initIndex 只要数据一修改立马执行监听函数
computed:{
// 计算属性默认只有getter
getCurrentSongSrc:function(){
return this.musicData[this.initIndex].songSrc
}
},
methods:{
clickHandler(index){
// 点击click事件后调用该方法切换歌曲
this.initIndex=index
}
}
});
</script>
</html>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。