Vue学习笔记(一)基于Vue2的TodoList待办事项增删查案例 | 基于Node.js 使用Vue-CLI脚手架构建项目

一、参考资料


二、运行环境


  • Windows11
  • Visual Studio Code v2022
  • Node.js v16.5.01
  • Vue/cli v5.0.6

需求案例说明:

使用 Vue2模块化编程方式来实现下图的案例(样式是参照教程随便写的,这里以熟悉Vue2为主)

在这里插入图片描述

项目结构:

在这里插入图片描述

说明:

Vue2支持模块化编程,一个 Vue后缀的文件表示一个Vue组件,其中通常包括 :

1) HTML 代码,即<template> 标签,
2) JS代码,即<script>标签 ,通常是返回 Key-Value 形式的对象,表示一些关于Vue组件的参数,包括变量和函数。
3)CSS样式代码,即<style> 标签,通常使用 scoped 限制样式只在当前组件内有效。

三、根据需求进行分模块开发

在这里插入图片描述
根据界面可将这个Todo案例分为三个模块,分别是 Header、Body和Footer,其中Body中由多个待办事项组成,所以Body还可以分成多个TodoItem,所以共有4个模块。

需要注意的是,在Vue2工程中,App.vue类似于 SpringBoot里的启动类,是主要导入在HTML的组件,所以关于数据的存储和修改都将放在App.vue中,而其他的组件则需要通过App进行传递相关的数据或者函数来完成案例。

四、代码实现

App.vue

<template>
  <div id="app">
    
    <h1><img src="./assets/logo.png">基于Vue2的TodoList案例</h1>
    <TodoHeader :fnAddTodo="fnAddTodo" ></TodoHeader>
    <TodoBody :todoList="todoList" :fnCheckTodo="fnCheckTodo" :fnDeleteTodo="fnDeleteTodo"></TodoBody>
    <TodoFooter :todoList="todoList" :fnUpdateTodo="fnUpdateTodo" :fnClearFinishedTodo="fnClearFinishedTodo"></TodoFooter>
  </div>
</template>

<script>
import TodoHeader from './components/TodoHeader.vue'
import TodoBody from './components/TodoBody.vue'
import TodoFooter from './components/TodoFooter.vue'

export default {
     
  name: 'App',
  data(){
     
    return {
     
      todoList: [
          {
     id: '001', title: '吃饭', done: true},
          {
     id: '002', title: '睡觉', done: false},
          {
     id: '003', title: '玩', done:false}
      ],
    }
  },
  methods: {
     
    // 函数: 添加新的待办事项
    fnAddTodo(todoObj){
     
      this.todoList.unshift(todoObj)
    },
    // 函数: 切换待办事项的状态
    fnCheckTodo(id){
     
      this.todoList.forEach((todoObj) => {
     
        if(id === todoObj.id)
          todoObj.done = !todoObj.done
      })
    },
    // 函数: 删除待办事项
    fnDeleteTodo(id){
     
      this.todoList 
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值