vue怎么传递参数给原生的js

请问有办法把index传给onEnd吗,然后在onEnd里再去改变data:里面的值
onended原生自带的回调获取不到index的值

     <div v-for="(item,index) in companyVideoList">
      <div class="video">
        <video :src="..." onended="onEnd(index)"></video>
      </div>
    </div>
    
    
    
    <script>
        function onEnd(index) {
            console.log(app,index)
        }
        
        var app = new Vue({
            ...
            ...
            ...
        })
    </script>
阅读 2.5k
2 个回答
<div v-for="(item,index) in companyVideoList">
      <div class="video">
        <video :src="..." onended="(params) => onEnd(index, params)"></video>
      </div>
    </div>
<video :src="..." onended="onEndedSelf(index)"></video>
methods: {
    onEndedSelf (index) {
        EventBus.emit('on-end', index)
    }
}

这里这个bus可以用第三方库,或者vue自带的,或者简单粗暴一点就是定一个全局函数做回调

EventBus.on('on-end', function (index) {
    // 数据变化了
    console.log(index)
})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题