vue实现todolist基本功能以及数据存储功能实例详解


Posted in Javascript onApril 11, 2019

实现todolist功能,具体实现如下:

可以实现对list添加、移除以及状态转变,其中添加功能既可以通过鼠标点击按钮实现,也可以通过回车键按下实现,通过使用v-model对checked的值进行双向绑定来完成状态的改变。在本次实际操作中仍存在一个小问题就是methods中函数调用,在完成数据存储前可以通过this.$options.methods.addFun();进行调用。

vue实现todolist基本功能以及数据存储功能实例详解

<div id="app">
       <input type="text" v-model="msg" @keydown="kaddFun($event)"/>
       <button @click="addFun()">添加</button>
       <br /><br />
       <h3>进行中</h3>
       <ul>
         <li v-for="(item,key) in list" v-if="!item.checked"><input type="checkbox" v-model="item.checked" @change="saveList()"/> {{item.title}} <button @click="moveFun(key)">移除</button></li>
       </ul>
       <h3>已完成</h3>
       <ul>
         <li v-for="(item,key) in list" v-if="item.checked" ><input type="checkbox" v-model="item.checked"/> {{item.title}} <button @click="moveFun(key)">移除</button></li>
       </ul>
     </div>
     <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
     <script type="text/javascript">
       var app = new Vue({
         el:'#app',
         data:{
           msg:'',
           list:[]
         },
         methods:{
           addFun(){
             this.list.push({
               title:this.msg,
               checked:false
             }),
             this.msg = '';
             //存储数据
            localStorage.setItem('list',JSON.stringify(this.list))
           },
           kaddFun(e){
             if(e.keyCode==13){
                this.addFun();
             }  
           },
           moveFun(key){
             confirm("是否移除"+this.list[key].title+"?");
             this.list.splice(key,1);
             localStorage.setItem('list',JSON.stringify(this.list))
           },
           saveList(){
             localStorage.setItem('list',JSON.stringify(this.list))
           }
         },
         //生命周期函数  vue页面刷新就会触发的方法
        mounted(){
           //json字符串转成json对象
          var list = JSON.parse(localStorage.getItem('list'))
           //判断list是否存在
          if(list){
             //存在则将获取到的list保存刷新后的list中
            this.list = list;
           }
         }
       })
     </script>

封装操作localstorage本地存储方法

vue实现todolist基本功能以及数据存储功能实例详解

总结

以上所述是小编给大家介绍的vue实现todolist基本功能以及数据存储功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
ExtJS GTGrid 简单用户管理
Jul 01 Javascript
jQuery 在光标定位的地方插入文字的插件
May 10 Javascript
js整数字符串转换为金额类型数据(示例代码)
Dec 26 Javascript
js 对小数加法精度处理示例说明
Dec 27 Javascript
jQuery获取选中内容及设置元素属性的方法
Jul 09 Javascript
Jquery的基本对象转换和文档加载用法实例
Feb 25 Javascript
JavaScript面试题(指针、帽子和女朋友)
Nov 23 Javascript
微信小程序开发之录音机 音频播放 动画实例 (真机可用)
Dec 08 Javascript
Element UI框架中巧用树选择器的实现
Dec 12 Javascript
使用uni-app开发微信小程序的实现
Dec 13 Javascript
Javascript实现鼠标点击冒泡特效
Dec 24 Javascript
浅析JavaScript 函数防抖和节流
Jul 13 Javascript
JavaScript高阶教程之“==”隐藏下的类型转换
Apr 11 #Javascript
使用Vue父子组件通信实现todolist的功能示例代码
Apr 11 #Javascript
详解jQuery设置内容和属性
Apr 11 #jQuery
js作用域和作用域链及预解析
Apr 11 #Javascript
关于js陀螺仪的理解分析
Apr 11 #Javascript
angular 表单验证器验证的同时限制输入的实现
Apr 11 #Javascript
angular 实现同步验证器跨字段验证的方法
Apr 11 #Javascript
You might like
也谈截取首页新闻 - 范例
2006/10/09 PHP
php生成局部唯一识别码LUID的代码
2012/10/06 PHP
在PHP中运行Linux命令并启动SSH服务的例子
2014/06/12 PHP
php计算税后工资的方法
2015/07/28 PHP
使用YII2框架实现微信公众号中表单提交功能
2017/09/04 PHP
PHP实现数组的笛卡尔积运算示例
2017/12/15 PHP
执行iframe中的javascript方法
2008/10/07 Javascript
JavaScript库 开发规则
2009/01/31 Javascript
Jquery中的CheckBox、RadioButton、DropDownList的取值赋值实现代码
2011/10/12 Javascript
window.open()详解及浏览器兼容性问题示例探讨
2014/05/29 Javascript
纯javascript判断查询日期是否为有效日期
2015/08/24 Javascript
学习JavaScript设计模式之代理模式
2016/01/12 Javascript
Nodejs学习item【入门手上】
2016/05/05 NodeJs
原生js获取iframe中dom元素--父子页面相互获取对方dom元素的方法
2016/08/05 Javascript
JS中this上下文对象使用方式
2016/10/09 Javascript
详解Vue.js之视图和数据的双向绑定(v-model)
2017/06/23 Javascript
bootstrap datetimepicker控件位置异常的解决方法
2017/11/23 Javascript
Angular ng-animate和ng-cookies用法详解
2018/04/18 Javascript
Vue中全局变量的定义和使用
2019/06/05 Javascript
layui下拉列表select实现可输入查找的方法
2019/09/28 Javascript
js找出5个数中最大的一个数和倒数第二大的数实现方法示例小结
2020/03/04 Javascript
js实现详情页放大镜效果
2020/10/28 Javascript
python使用epoll实现服务端的方法
2018/10/16 Python
pycharm运行和调试不显示结果的解决方法
2018/11/30 Python
python反爬虫方法的优缺点分析
2020/11/25 Python
编写html5时调试发现脚本php等网页js、css等失效
2013/12/31 HTML / CSS
美国顶级奢侈茶:Mighty Leaf Tea(美泰茶)
2016/11/26 全球购物
吉列剃须刀英国官网:Gillette英国
2019/03/28 全球购物
软件生产职位结构化面试主要考察要素及面试题库
2015/06/12 面试题
2013年学期结束动员演讲稿
2014/01/07 职场文书
物流合作计划书
2014/01/10 职场文书
管理失职检讨书
2014/02/12 职场文书
青年文明号汇报材料
2014/12/23 职场文书
标准演讲稿格式结尾应该怎么书写?
2019/07/17 职场文书
详解CocosCreator项目结构机制
2021/04/14 Javascript
python数据可视化使用pyfinance分析证券收益示例详解
2021/11/20 Python