VUE项目中加载已保存的笔记实例方法


Posted in Javascript onSeptember 14, 2019

现在笔记内容每次改变都会进行保存操作,我们需要在应用重新打开的时候恢复数据。这里
将使用 localStorage.getItem() API。将下面的代码添加到 JavaScript 文件的最后:

 一个基本的笔记编辑器

console.log('restored note:', localStorage.getItem('content'))

当刷新应用时,可以看到在浏览器控制台打印出了已经保存的笔记内容。

1. 生命周期钩子

将笔记内容恢复到 Vue 实例中的第一种方法就是在创建实例的时候设置 content 数据属性
的内容。

每个 Vue 实例都严格遵循一个生命周期,包括多个环节:创建,挂载到页面,更新,最终被
销毁。例如,在创建实例阶段,Vue 会将实例数据变成响应式数据。

钩子是一组特殊的函数,会在某个时间点被自动调用。这就允许我们自定义框架
的逻辑。例如,可以在创建 Vue 实例时调用一个方法。

在每个环节之中或之前,有多个钩子可以用于执行逻辑。

beforeCreate:在 Vue 实例被创建时(例如使用 new Vue({}))、完成其他事项之前

调用

  • created:在实例准备就绪之后调用。注意,此时实例还没有挂载到 DOM 中。
  • beforeMount:在挂载(添加)实例到 Web 页面之前调用。
  • mounted:当实例被挂载到页面并且 DOM 可见时调用。
  • beforeUpdate:当实例需要更新时(一般来说,是当某个数据或计算属性发生改变时)

调用

  • updated:在把数据变化应用到模板之后调用。注意此时 DOM 可能还没有更新。
  • beforeDestroy:在实例销毁之前调用。
  • destroyed:在实例完全销毁之后调用。

目前,我们只使用 created 钩子来恢复笔记内容。要添加一个生命周期钩子,只需要将相
应的名字作为函数添加到 Vue 实例选项中即可:

new Vue({
// ...

// 当实例准备就绪会调用这个钩子 


created() {

// 将 content 设置为存储的内容
// 如果没有保存任何内容则设置为一个默认字符串
this.content = localStorage.getItem('content') || 'You can write in
** markdown ** '
},
})

现在刷新应用,created 钩子会在实例创建时被自动调用。这将把 content 数据属性设置

为恢复出来的数据;如果表达式结果为假值(之前没有保存过任何内容),则会设置为'You can

以上就是本次介绍的全部知识点内容,感谢大家对三水点靠木的支持。

Javascript 相关文章推荐
javascript之ESC(第二类混淆)
May 06 Javascript
使用dynatrace-ajax跟踪JavaScript的性能
Apr 12 Javascript
JS重要知识点小结
Nov 06 Javascript
jquery 模板的应用示例
Nov 12 Javascript
浅析jQuery1.8的几个小变化
Dec 10 Javascript
JS合并数组的几种方法及优劣比较
Sep 19 Javascript
javascript实现在线客服效果
Jul 15 Javascript
javascript检测flash插件是否被禁用的方法
Jan 14 Javascript
jQuery查找节点方法完整实例
Sep 13 Javascript
Vue.js实现的计算器功能完整示例
Jul 11 Javascript
vue中如何实现后台管理系统的权限控制的方法示例
Sep 19 Javascript
jQuery实现获取多选框的值示例
Feb 07 jQuery
Layui表格行工具事件与数据回填方法
Sep 13 #Javascript
layui使用表格渲染获取行数据的例子
Sep 13 #Javascript
layui-table表复选框勾选的所有行数据获取的例子
Sep 13 #Javascript
layui表格数据复选框回显设置方法
Sep 13 #Javascript
对layui初始化列表的CheckBox属性详解
Sep 13 #Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
Sep 13 #Javascript
使用VScode 插件debugger for chrome 调试react源码的方法
Sep 13 #Javascript
You might like
PHP中echo和print的区别
2014/08/28 PHP
php实现图片缩略图的方法
2016/03/29 PHP
JS 控制CSS样式表
2009/08/20 Javascript
script标签的 charset 属性使用说明
2010/12/04 Javascript
自定义jQuery选项卡插件实例
2013/03/27 Javascript
jQuery中:nth-child选择器用法实例
2014/12/31 Javascript
JavaScript实现添加及删除事件的方法小结
2015/08/04 Javascript
JSONObject使用方法详解
2015/12/17 Javascript
基于Vuejs实现购物车功能
2016/08/02 Javascript
JavaScript计时器用法分析【setTimeout和clearTimeout】
2017/01/18 Javascript
JavaScript之浏览器对象_动力节点Java学院整理
2017/07/03 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
AngularJS自定义过滤器用法经典实例总结
2018/05/17 Javascript
详解项目升级到vue-cli3的正确姿势
2019/01/28 Javascript
nodejs和react实现即时通讯简易聊天室功能
2019/08/21 NodeJs
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
2020/04/25 Javascript
vue 单页应用和多页应用的优劣
2020/10/22 Javascript
Python导入txt数据到mysql的方法
2015/04/08 Python
python异常和文件处理机制详解
2016/07/19 Python
python 写入csv乱码问题解决方法
2016/10/23 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
从0开始的Python学习014面向对象编程(推荐)
2019/04/02 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
wxpython布局的实现方法
2019/11/01 Python
python属于解释型语言么
2020/06/15 Python
深入浅析CSS3中的Flex布局整理
2020/04/27 HTML / CSS
办公室经理岗位职责
2014/01/01 职场文书
师范学院美术系毕业生自我鉴定
2014/01/29 职场文书
计算机专业职业规划
2014/02/28 职场文书
学校党的群众路线教育实践活动对照检查材料
2014/09/24 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
本科毕业论文指导教师评语
2014/12/30 职场文书
2015暑假实习报告范文
2015/07/13 职场文书
领导新年致辞2016
2015/07/29 职场文书
MySQL数字类型自增的坑
2021/05/07 MySQL
SQL SERVER存储过程用法详解
2022/02/24 SQL Server