Vue制作todoList事件备忘录经典小案例

前言

今天是10月1日国庆节,行走在大街小巷,处处洋溢着热烈喜庆的节日氛围,在这一天祝愿祖国繁荣昌盛,越来越强大。因国庆放假(本来周六这天有课),今天无聊看了看后台私信,看到了很对私我类似的消息:

很喜欢看你的作品,一直都陪伴着我感觉很开心,希望以后一直都可以看到,如果不更的话那就太可惜了——非常感谢你们的支持与鼓励,你们默默催更的鼓励与支持是我坚持不懈的动力。

前几天无聊用Vue框架写了一个todoList事件备忘录小案例,自己感觉挺好玩的,温馨提示:请大家提前到Vue官网下载一个Vue框架文文件(后续需要引入到项目里面),接下类给大家分析一下这个经典小案例:

Vue.js官网

1、基本写法

   </head>
<body>
    <ul>
        <li>
            14天核酸检测
        </li>
        <li>
            9.3开学
        </li>
        <li>
            开学第一课
        </li>
    </ul>

在这里插入图片描述

input文本框

在这里插入图片描述

button按钮

<button>提交</button>

在这里插入图片描述

2、实际运用开发

在实际运用开发时,我们的数据和内容不能写死,方便后续添加或修改内容,这样的话使用上面这种方法,你就发现这个方法效率很低,而且每次修改或者添加新的内容的时候都得添加一个<li></li>标签 ,这就很繁琐,而且效率也不怎么高,那么有没有一种效率高的方法来实现对应操作呢?事实证明它是有的。

写一个容器div,将内容全部放入,vue本身不是全局生效,需要指定生效的位置

<div id="app">
 <h1>{{title}}</h1>
<!-- 添加一个文本框 -->
<input type="text">

v-on 简写 @绑定事件指令 点击button时触发 add方法

<button @click="add()">提交</button>

v-for 循环产生的结构
(item,index) 数组中内容和内容对应的索引值
in 循环的数组

   <ul>
      <li v-for="(item,index) in lists">
          {{item}}
      </li>
   </ul> 
    </div>

3、初始化一个vue项目

<script>

</script>

//创建一个vue对象
//let 定义一个变量
//用于保存 后方Vue对象
//数据: 数组:[1,2,3]
放置同样类型的元素
//{ // key:value //}

//循环过程中 先要将循环的数据,显示对应的结构中 //数组如何显示到页面中: 插值表达式{{}}
//给提交按钮添加一个点击事件

let vm=new Vue({
       //el:选项
       el:"#app",//el绑定生效的区间
       data:{//本次需要哪些数据
          lists:["14天核酸检测","开学9.3","开学第一课","专接本"],
          title:"希望可以顺利开学"
      
        },
        methods:{
            add(){
            

4、如何在数组中追加内容、找到对应的数组

//顺利开学!!!
//直接在数组中 追加 顺利开学
//如何找到对应的数组?
//this对象 -> vue对象
//lists

console.log(this.lists)

在这里插入图片描述

                this.lists.push("顺利开学!!!")
                // console.log(1)
                
            }
        }
   })

在这里插入图片描述

5、todoList事件备忘录源码分享

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>todoList</title>
    <script src="js/vue221.js"></script>
</head>
<body>
    <!-- 写一个容器div,将内容全部放入,vue本身不是全局生效,需要指定生效的位置 -->
    <div id="app">
        <h1>{{title}}</h1>
    <!-- 添加一个文本框 -->
    <input type="text">
    <!-- v-on  简写 @绑定事件指令  点击button时触发 add方法 -->
    <button @click="add()">提交</button>
   <ul>
       <!-- v-for 循环产生的结构 
       (item,index) 数组中内容和内容对应的索引值
       in 循环的数组--> 
      <li v-for="(item,index) in lists">
          {{item}}
      </li>
   </ul> 
    </div>
    <!-- 初始化一个vue项目 -->
    <script>
   //创建一个vue对象
   //let 定义一个变量
   //用于保存 后方Vue对象
   //数据: 数组:[1,2,3] 放置同样类型的元素
   //{
   //    key:value
   //}
   //循环过程中 先要将循环的数据,显示对应的结构中
   //数组如何显示到页面中: 插值表达式{{}}
   //给提交按钮添加一个点击事件
   let vm=new Vue({
       //el:选项
       el:"#app",//el绑定生效的区间
       data:{//本次需要哪些数据
          lists:["14天核酸检测","开学9.3","开学第一课","专接本"],
          title:"希望可以顺利开学"
      
        },
        methods:{
            add(){
                //顺利开学!!!
                //直接在数组中  追加  顺利开学
                //如何找到对应的数组?
                //this对象 -> vue对象
                //lists
                // console.log(this.lists)
                this.lists.push("顺利开学!!!")
                // console.log(1)
            }
        }
   })
    </script>
</body>
</html>

再写一个送给祖国母亲七十三周年生日快乐的!!!

6、祖国母亲七十三周年生日快乐

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>todoList</title>
    <script src="js/vue221.js"></script>
</head>
<body>
    <!-- 写一个容器div,将内容全部放入,vue本身不是全局生效,需要指定生效的位置 -->
    <div id="app">
        <h1>{{title}}</h1>
    <!-- 添加一个文本框 -->
    <input type="text">
    <!-- v-on  简写 @绑定事件指令  点击button时触发 add方法 -->
    <button @click="add()">提交</button>
   <ul>
       <!-- v-for 循环产生的结构 
       (item,index) 数组中内容和内容对应的索引值
       in 循环的数组--> 
      <li v-for="(item,index) in lists">
          {{item}}
      </li>
   </ul> 
    </div>
    <!-- 初始化一个vue项目 -->
    <script>
   //创建一个vue对象
   //let 定义一个变量
   //用于保存 后方Vue对象
   //数据: 数组:[1,2,3] 放置同样类型的元素
   //{
   //    key:value
   //}
   //循环过程中 先要将循环的数据,显示对应的结构中
   //数组如何显示到页面中: 插值表达式{{}}
   //给提交按钮添加一个点击事件
   let vm=new Vue({
       //el:选项
       el:"#app",//el绑定生效的区间
       data:{//本次需要哪些数据
          lists:["放假在家休息两天","去天安门广场看国庆升旗仪式","给祖国母亲写一份手抄报","看阅兵大典"],
          title:"国庆节快乐"
      
        },
        methods:{
            add(){
                //顺利开学!!!
                //直接在数组中  追加  顺利开学
                //如何找到对应的数组?
                //this对象 -> vue对象
                //lists
                // console.log(this.lists)
                this.lists.push("祝祖国母亲七十三周年生日快乐!!!")
                // console.log(1)
            }
        }
   })
    </script>
</body>
</html>
  • 21
    点赞
  • 14
    收藏
  • 打赏
    打赏
  • 40
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:书香水墨 设计师:CSDN官方博客 返回首页
评论 40

打赏作者

爱笑的陈sir

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值