有什么方法可以使用addClass()添加vueJs中的单击类?

时间:2019-12-12 04:34:57

标签: laravel vue.js

我尝试了此代码,但无法正常工作。有什么解决办法吗?请帮我。谢谢。

<div id="app">
  <li class="blah" @click="onClk">
     Divs to be clicked
  </li>
</div>

new Vue({
  el: '#app',
  methods: {
    onClk(e) {
        e.target.addClass('red');
    }
  }
})

2 个答案:

答案 0 :(得分:3)

classList不是 Vue.js 的声明式思考方式。理想情况下,您的代码应为:

<div id="app">
  <li class="blah" @click="onClk" :class="{ red: isActive }">
    Divs to be clicked
  </li>
</div>


new Vue({
  el: '#app',

  data() {
    return {
      isActive: false
    };
  }

  methods: {
    onClk(e) {
      this.isActive = true;
    }
  }
})

答案 1 :(得分:2)

您可以使用

 onClk(e) {
    e.target.classList.add('red');
 }

您可以选中demo here