You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue.js实现点击<li>元素添加指定类名的方法求助

Vue.js 实现点击任务项标记完成并添加类名

嗨,我明白你想要实现的效果——点击任务列表项就能标记为已完成,同时给它加上对应的类名。既然你熟悉jQuery的DOM操作方式,那我得先提醒你,Vue的核心是数据驱动,我们不用直接去操作DOM元素,而是通过控制数据状态来让Vue自动更新视图,这会比jQuery的方式更简洁也更符合Vue的设计理念。

下面我给你两种常见的实现方式,分别对应Vue 2的选项式API和Vue 3的组合式API,你可以根据自己的项目版本选择:

方式一:Vue 2 选项式API

<template>
  <ul>
    <!-- 循环渲染任务列表,绑定点击事件和类名 -->
    <li 
      v-for="(task, index) in tasks" 
      :key="index"
      :class="{ 'completed': task.completed }"
      @click="toggleTask(index)"
    >
      {{ task.text }}
    </li>
  </ul>
</template>

<script>
export default {
  data() {
    return {
      // 定义任务列表数据,每个任务包含文本和完成状态
      tasks: [
        { text: '学习Vue基础', completed: false },
        { text: '完成任务列表功能', completed: false },
        { text: '整理笔记', completed: false }
      ]
    }
  },
  methods: {
    // 切换任务的完成状态
    toggleTask(index) {
      this.tasks[index].completed = !this.tasks[index].completed;
    }
  }
}
</script>

<style>
/* 已完成任务的样式 */
.completed {
  text-decoration: line-through;
  color: #999;
}
li {
  cursor: pointer;
  margin: 8px 0;
}
</style>

方式二:Vue 3 组合式API(

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:12:35