<template>
<div id="app"> <input type="text" v-model='todo' @keydown="doAdd($event)" />
<br>
<hr>
<br> <h2>进行中</h2>
<ul> <li v-for="(item,key) in list" v-if="!item.checked">
<input type="checkbox" v-model='item.checked'> {{item.title}} ---- <button @click="removeData(key)">删除</button>
</li>
</ul> <br>
<h2>已完成</h2>
<ul class="finish"> <li v-for="(item,key) in list" v-if="item.checked">
<input type="checkbox" v-model='item.checked'> {{item.title}} ----<button @click="removeData(key)">删除</button>
</li>
</ul> <h2 v-if='ok'>这是一个ok</h2> <h2 v-if='!ok'>这是一个No</h2> <button @click="getList()">获取list的值</button> </div>
</template> <script> /*
['录制nodejs','录制ionic'] [ {
title:'录制nodejs',
checked:true
},
{
title: '录制ionic',
checked: false
}
] */ export default {
data () {
return {
ok:false,
todo:'' ,
list: [ {
title: '录制nodejs',
checked: true
},
{
title: '录制ionic',
checked: false
}
]
}
},
methods:{ doAdd(e){
console.log(e.keyCode) if(e.keyCode==13){
//1、获取文本框输入的值 2、把文本框的值push到list里面
this.list.push({ title: this.todo,
checked: false
}) this.todo='';
}
},
removeData(key){ // alert(key) //splice js操作数组的方法
this.list.splice(key,1);
}, getList(){ console.log(this.list)
}
} }
</script> <style lang="scss"> .finish{
li{
background:#eee;
}
} </style>

Vue 事件结合双向数据绑定实现todolist 待办事项 已经完成 和进行中的更多相关文章

  1. vue.js--基础 事件结合双向数据绑定实现todolist 待办事项 已经完成 和进行中,键盘事件

    <template> <div id="app"> <h1>{{ msg }}</h1> <input type=" ...

  2. vue2.* 事件结合双向数据绑定、模块化以及封装Storage实现todolist 待办事项 已经完成 和进行中持久化 06

    ceshi.vue <template> <div id="app"> <input type='text' v-model='todo' @keyd ...

  3. vue 事件结合双向数据绑定实现todolist

    <template> <div id="app"> <input type="text" v-model='todo' /> ...

  4. vue.js--基础 事件结合双向数据绑定实现todolist,增加和删除功能

    原理很简单,写一个input框,定义一个空的list,当在input中增加数据时,就往list中添加数据,然后在循环这个list的数据,删除数据就是调用list中的splice <templat ...

  5. Vue绑定事件,双向数据绑定,只是循环没那么简单

    v-on对象处理 <p @mouseover = "doTish" @mouseout = "doThat"> 对象形式 </p> &l ...

  6. Vue、AngularJS 双向数据绑定解剖

    数据与视图的绑定与同步,最终体现在对数据的读写处理过程中,也就是 Object.defineProperty() 定义的数据 set.get 函数中.Vue 中对于的函数为 defineReactiv ...

  7. Vue父子组件双向数据绑定

    [本文出自天外归云的博客园] 简介 Vue版本:2.9.6 Element版本:2.4.8 问题描述:子组件对Element中el-select进行封装,父组件中把选中的值selected和所有选项o ...

  8. js仿toDoList(待办事项)练习

    JS的一个小练习 展示成果 话不多说 html骨架 <!DOCTYPE html> <html lang="en"> <head> <me ...

  9. todolist待办事项

    使用html/css原生js实现待办事项列表: 支持添加待办事项,删除待办事项,切换待办事项的状态(正在进行,已经完成) 支持对正在进行以及已经完成事项编辑(单击内容即可编辑) 源代码:链接:http ...

随机推荐

  1. ffmpeg常用命令-学习

    文章标题:FFmpeg常用命令合集 文章地址:https://blog.csdn.net/lemon_tree12138/article/details/99719520

  2. mysql安装好需要启动和停止服务

    启动mysql: mysql.server start 停止服务:mysql.server stop

  3. Flask - 四剑客 | templates | 配置文件 | 路由系统 | CBV

    Flask框架简介 说明:flask是一个轻量级的web框架,被称为微型框架.只提供了一个高效稳定的核心,其它全部通过扩展来实现.意思就是你可以根据项目需要进行量身定制,也意味着你需要不断学习相关的扩 ...

  4. Flatten List

    Description Given a list, each element in the list can be a list or integer. flatten it into a simpl ...

  5. Stone Game

    Description There is a stone game.At the beginning of the game the player picks n piles of stones in ...

  6. centOS下实践查询版本/CPU/内存/硬盘容量等硬件信息

    更详细参考: https://blog.csdn.net/dream_broken/article/details/52883883 1.查看内存 DirectMap2M: 33544192 kB [ ...

  7. learning java Date类

    var d1 = new Date(); var d2 = new Date(System.currentTimeMillis() + 1000); System.out.println(d1); S ...

  8. [C++11]C++可变参数模板

    可变参数模板 原文链接: http://blog.csdn.net/xiaohu2022/article/details/69076281 普通模板只可以采取固定数量的模板参数.然而,有时候我们希望模 ...

  9. jsp页面解析出错,或出现下载情况.

    当没有下面代码时,会出现空白页的bug <dependency> <groupId>org.apache.tomcat.embed</groupId> <ar ...

  10. rpm命令是RPM软件包的管理工具

    rpm命令是RPM软件包的管理工具.rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎.逐渐受到其他发行版的采用.RPM ...