如何将方法绑定到元素在v-for循环中单击?

时间:2019-05-04 11:00:35

标签: javascript vue.js

Iv有一个v-for,我需要此循环中的每个元素才能对mouseclick做出反应。当我像平时那样绑定方法时,什么也没有发生。但是在v-之外,我使用的这种方法似乎按预期工作。 我该怎么办?

这是html代码

<div v-for="day of days" v-on:click="dayClick(day.id)">
{{ day.day }}
</div>

这是vue应用代码

var app = new Vue({
    el: '#app',
    data: {
       days: [],
          },
     methods: {
        dayClick: function (dayId) {
            console.log(dayId);
         }
      }
})

当我将此方法绑定到v-for之外的任何其他元素时,效果很好

我越来越喜欢[]

axios({
   method: 'get',
   url: '{{URL::to('api/calendar/days')}}?token=' + this.user.token + '&userId=' + this.user.id
}).then((response) => {
   this.days = response.data.days;
   this.daysOfWeek = response.data.daysOfWeek;
  })```

2 个答案:

答案 0 :(得分:0)

如果您做这样的事情?

<template v-for="(day) in days">
    <div v-on:click="dayClick(day.id)">
       {{ day.day }}
    </div>
</template>

答案 1 :(得分:-1)

一如既往-是我自己最大的敌人。我尝试查看的元素有virtualenv --python=python3 fibonacci_env 。对不起,谢谢您的帮助。我比你们所有人都愚蠢