为了账号安全,请及时绑定邮箱和手机立即绑定

vue.js :scr 数据绑定

vue.js :scr 数据绑定

紫衣仙女 2019-02-15 18:12:05
我像想用vue搭建一个关于音乐播放器的功能 但是其中上一首 下一首则是用数组循环出来数组中存放着我的本地路径如new Vue({    el:"body",    data:{        arr: [{ name: 'music/ttdd.mp3',//这是路径             singer: 'xxxxxxx'},,           { name: 'music/xxxxxxxx.mp3',             singer: 'xxxxx'          }],          index:0,          music:""    },    methods:{        next:(){//这是我点击下一首的函数            this.index++            if(this.index>this.arr.length-1){                this.index=0            }            this.music=this.arr[this.index].name        }    }})但是我页面渲染的时候是这样写的//以前当是数组的时候我是这样写的<audio autobuffer v-for=“i in arr” :src=['path/'+i.name] autoloop loop controls v-el:audio></audio>//这样是可以使用的但是只要是单个数据时<audio autobuffer :src=['path/'+music] autoloop loop controls v-el:audio></audio>然后:src=music也是报错的究竟怎样才能把数据绑定到元素的属性上呢
查看完整描述

1 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

我给你改写一下吧,也可以吧src上绑定的东西搞成一个计算属性,方便其他位置用

new Vue({

    el:"body",

    data:{

        arr: [{ name: 'music/ttdd.mp3',//这是路径

             singer: 'xxxxxxx'},,

           { name: 'music/xxxxxxxx.mp3',

             singer: 'xxxxx'

          }],

          index:0

    },

    methods:{

        next:(){//这是我点击下一首的函数

            this.index++

            if(this.index>this.arr.length-1){

                this.index=0

            }

        }

    }

})


//这样是可以使用的但是只要是单个数据时

<audio autobuffer :src="'path/'+arr[index].name" autoloop loop controls v-el:audio></audio>


查看完整回答
反对 回复 2019-02-16
  • 1 回答
  • 0 关注
  • 807 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信