Почему не работает плеер в v-for?

150
07 марта 2019, 07:40

Есть плеер с сервиса yohoho(не реклама). Беру их скрипт, добавляю в index.html, затем беру div который будет отображать плеер и добавляю его в пустой компонент, он работает. Но если я его добавлю в такой div

<div class="movie" v-for="mov in movie">...</div>

И он перестает работать, почему? Мне нужно передать в div от сервиса yohoho имя нужного сериала, а он находится в mov.name как мне сделать? Можно ли в цикле к примеру назначить значение из mov.name какой-то другой переменной и затем ее использовать в нужном мне div'e?

Код:

<template>
<div>
    <div class="movie" v-for="mov in movie">
        <div id="yohoho" data-player="moonwalk" data-title="Моана"></div> <!-- Так не работает -->
    </div>
    <div class="movie">
        <div id="yohoho" data-player="moonwalk" data-title="Моана"></div> <!-- Так работает -->
    </div>
</div>

JS:

    import axios from 'axios';
    import yohoho from './yohoho/yohohoComponent.vue';
    export default{
        data: ()=>({
            movie: [],
            also: [],
            show: true
        }),
        created(){
            this.fetch();
        },
        methods:{
            fetch(){
                axios.post('/api/get',{
                    id: this.$route.params.id
                })
                .then(res =>{
                    this.movie = res.data.serial
                })
            }
        },
        components:{
            'yohoho':yohoho
        }
    }
Answer 1

Вот так обратитесь

<div class="movie" v-for="(mov, index) in movie" :key="index">
        <div id="yohoho" data-player="moonwalk" :data-title="mov.name"></div> 
</div>

https://codepen.io/Rusic/pen/qJJrom вот тут пример, только id yohoho изменил на class

READ ALSO
связать 2 текстовых поля через чистый js

связать 2 текстовых поля через чистый js

у меня такой вопрос, есть 2 поля которые нужно связать, оставляю код:

180
Не работает ng-include AngularJS

Не работает ng-include AngularJS

Установил xamppРазрабатываю проект на AngularJS

238
Проверить, имеется ли данная подстрока в каждом элементе массива строк

Проверить, имеется ли данная подстрока в каждом элементе массива строк

Имеется массив строк, необходимо проверить содержится ли некая подстрока в каждом элементе массива строк, в случае, если хоть в одной строке...

145
Как поменять кавычку внутри слова, не меняя другие кавычки в тексте

Как поменять кавычку внутри слова, не меняя другие кавычки в тексте

Нужно сделать регулярными выражениямиКак написать шаблон для замены кавычек c " на ' - только тех которые находятся внутри слов?

172