当前位置:首页 > 前端教程

elementui todolist

2026-01-15 18:51:53前端教程

使用Element UI实现TodoList

Element UI提供了丰富的组件,可以快速搭建一个TodoList应用。以下是一个基于Element UI的TodoList实现方法。

安装Element UI

确保项目中已经安装Element UI。可以通过npm或yarn安装:

npm install element-ui

yarn add element-ui

引入Element UI

在项目的入口文件(如main.js)中引入Element UI:

import Vue from 'vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

实现TodoList组件

创建一个TodoList组件,使用Element UI的el-inputel-buttonel-checkboxel-card等组件。

<template>
  <div class="todo-list">
    <el-card class="box-card">
      <div slot="header" class="clearfix">
        <span>Todo List</span>
      </div>
      <el-input
        v-model="newTodo"
        placeholder="请输入任务"
        @keyup.enter.native="addTodo"
      ></el-input>
      <el-button type="primary" @click="addTodo">添加</el-button>
      <ul>
        <li v-for="(todo, index) in todos" :key="index">
          <el-checkbox v-model="todo.completed"></el-checkbox>
          <span :class="{ 'completed': todo.completed }">{{ todo.text }}</span>
          <el-button type="danger" size="mini" @click="removeTodo(index)">删除</el-button>
        </li>
      </ul>
    </el-card>
  </div>
</template>

<script>
export default {
  data() {
    return {
      newTodo: '',
      todos: []
    };
  },
  methods: {
    addTodo() {
      if (this.newTodo.trim() === '') return;
      this.todos.push({
        text: this.newTodo,
        completed: false
      });
      this.newTodo = '';
    },
    removeTodo(index) {
      this.todos.splice(index, 1);
    }
  }
};
</script>

<style>
.todo-list {
  max-width: 600px;
  margin: 0 auto;
}
.completed {
  text-decoration: line-through;
  color: #999;
}
ul {
  list-style: none;
  padding: 0;
}
li {
  display: flex;
  align-items: center;
  margin: 10px 0;
}
</style>

功能说明

  • 添加任务:在输入框中输入任务内容,按回车键或点击“添加”按钮即可添加任务。
  • 标记完成:勾选复选框可以标记任务为完成状态,任务文本会显示为删除线。
  • 删除任务:点击“删除”按钮可以移除任务。

扩展功能

如果需要更复杂的功能,可以结合Element UI的其他组件进行扩展:

  • 使用el-dialog实现任务编辑功能。
  • 使用el-tag为任务添加标签分类。
  • 使用el-date-picker为任务设置截止日期。

注意事项

  • 确保Vue项目已经正确配置。
  • 可以根据需求调整样式和布局。
  • 如果需要持久化存储,可以结合localStorage或后端API实现。

elementui todolist

分享给朋友:

相关文章

elementui响应式布局

elementui响应式布局

响应式布局基础概念 响应式布局指页面能够根据屏幕尺寸自动调整结构和样式,确保在不同设备上呈现良好的用户体验。Element UI 基于 Vue.js,其组件默认支持响应式设计,但需结合 CSS 媒体查…

elementui升级plus

elementui升级plus

Element UI 升级到 Element Plus 的方法 Element Plus 是 Element UI 的升级版本,专为 Vue 3 设计,提供了更好的性能和更多新特性。以下是升级的具体步…

elementui使用

elementui使用

安装 Element UI 通过 npm 或 yarn 安装 Element UI: npm install element-ui --save # 或 yarn add element-ui 在…

iview elementui

iview elementui

iview与Element UI对比 iview和Element UI都是基于Vue.js的UI组件库,适用于快速开发企业级中后台产品。以下是两者的主要差异和特点: 设计风格 iview采用圆…

vue elementui

vue elementui

Vue 中使用 Element UI Element UI 是一套基于 Vue 2.0 的桌面端组件库,提供丰富的 UI 组件和交互功能。以下是如何在 Vue 项目中集成和使用 Element UI…

elementui组件

elementui组件

ElementUI 组件概述 ElementUI 是一套基于 Vue.js 的桌面端组件库,提供丰富的 UI 组件,适用于快速开发中后台系统。以下是其核心组件分类及典型用法。 基础组件 Button…