1.双向绑定和单向数据流:

2.虚拟DOM及KEY属性作用

  • jquery:

  • vue:

  • virtual dom

  • 新旧DOM树比较

同层级比较:

  • 节点移动
    • 不带Key移动

    • 带Key移动

  • 插入
    • 有KEY(性能高)

  • 节点删除新建

(算法因为同层级策略,无法达到最优解)

3.如何触发组件更新

数据驱动

任何修改DOM的行为都是在作死!

数据来源(单向)

状态data和属性props

  • 状态是组件自身的数据
  • 属性是来自父组件数据
  • 状态改变未必会出发更新
  • 属性改变未必会出发更新

响应式更新原理

4.计算属性和侦听器

计算属性:

可以在里面写些逻辑的属性

好处:

  • 减少模板中计算逻辑
  • 数据缓存
  • 依赖固定数据类型(响应式数据)

侦听器

好处:

  • 更加灵活,通用
  • 可以执行任何逻辑,如函数节流,ajax异步获取数据,甚至操作节点。

二者区别

  • 计算属性能做的,侦听器都能做,反之则不行
  • 能用计算属性的尽量用它

5.生命周期的应用场景和函数式组件

生命周期

创建阶段分解

更新阶段分解

销毁阶段分解

函数式组件

  • 申明:functional:true
  • 无状态,无实例,没有this上下文,无生命周期
  • 用途:临时变量用来存储重复计算

可以简单的认为他是一个方法,它的用法不同于计算属性:

  • 必须依赖响应式数据;
  • 模板中需要依赖v-for,v-if
  • 可能依赖全局数据

TempVar.js

Vue学习笔记:Vue组件的核心概念(下)的更多相关文章

  1. vue学习笔记(八)组件校验&通信

    前言 在上一章博客的内容中vue学习笔记(七)组件我们初步的认识了组件,并学会了如何定义局部组件和全局组件,上一篇内容仅仅只是对组件一个简单的入门,并没有深入的了解组件当中的其它机制,本篇博客将会带大 ...

  2. Vue学习笔记-Vue.js-2.X 学习(三)===>组件化高级

    (四) 组件化高级 1.插槽(slot)的基本使用 A:基本使用: <slot></slot> B:默认置:<slot><h1>中间可以放默认值< ...

  3. Vue学习笔记-Vue.js-2.X 学习(二)===>组件化开发

    ===重点重点开始 ========================== (三) 组件化开发 1.创建组件构造器: Vue.extends() 2.注册组件: Vue.component() 3.使用 ...

  4. Vue学习笔记-Vue.js-2.X 学习(一)===>基本知识学习

    一  使用环境: windows 7 64位操作系统 二  IDE:VSCode/PyCharm 三  Vue.js官网: https://cn.vuejs.org/ 四  下载安装引用 方式1:直接 ...

  5. Vue学习笔记-Vue.js-2.X 学习(六)===>脚手架Vue-CLI(项目说明-Babel)

    五  Vue学习-vue-cli脚手架学习(创建只选一个选项:Babel) 1. 项目目录说明 node_modules : 包管理文件夹 public : 静态资源 src : 源代码 gitign ...

  6. Vue学习笔记-Vue.js-2.X 学习(五)===>脚手架Vue-CLI(PyCharm)

    Vue项目在pycharm中配置 退出运行: ctrl+c Vue学习笔记-Vue.js-2.X 学习(六)===>脚手架Vue-CLI(项目说明)

  7. Vue学习笔记-Vue.js-2.X 学习(四)===>脚手架Vue-CLI(基本工作和创建)

    (五) 脚手架Vue-CLI 一 Vue-CLI前提(nodejs和webpack) 二  Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nod ...

  8. Vue学习笔记-Vue基础入门

    此篇文章是本人在学习Vue是做的部分笔记的一个整理,内容不是很全面,希望能对阅读文章的同学有点帮助. 什么是Vue? Vue.js (读音 /vjuː/,类似于 view) 是一套构建用户界面的渐进式 ...

  9. Vue学习笔记-Vue.js-2.X 学习(七)===>脚手架Vue-CLI(路由Router)

    脚手架Vue-CLI(路由Router) 一 按装(通过新创建脚手架按装),如果在原来的脚手架上按装直接进图型化界面vue ui的插件按装. 二 使用(上面按装下面步骤自动会生成) 第一步:导入路由对 ...

  10. Elasticsearch学习笔记(六)核心概念和分片shard机制

    一.核心概念 1.近实时(Near Realtime NRT) (1)从写入数据到数据可以被搜索到有一个小延迟(大概1秒): (2)基于es执行搜索和分析可以达到秒级 2.集群(Cluster) 一个 ...

随机推荐

  1. JavaScript ES6函数式编程(二):柯里化、偏应用和组合、管道

    上一篇介绍了闭包和高阶函数,这是函数式编程的基础核心.这一篇来看看高阶函数的实战场景. 首先强调两点: 注意闭包的生成位置,清楚作用域链,知道闭包生成后缓存了哪些变量 高阶函数思想:以变量作用域作为根 ...

  2. 上传文件夹或上传文件到linux

    http://jingyan.baidu.com/article/d169e18658995a436611d8ee.html https://www.cnblogs.com/nbf-156cwl/p/ ...

  3. gojs常用API (中文文档)

    常用API   操作类API   API 例子 应用场景 添加节点 myDiagram.model.addNodeData(node); var node = {}; node["key&q ...

  4. Jackson替换fastjson

    为什么要替换fastjson 工程里大量使用了fastjson作为序列化和反序列化框架,甚至ORM在处理部分字段也依赖fastjson进行序列化和反序列化.那么作为大量使用的基础框架,为什么还要进行替 ...

  5. 【python数据分析实战】电影票房数据分析(一)数据采集

    目录 1.获取url 2.开始采集 3.存入mysql 本文是爬虫及可视化的练习项目,目标是爬取猫眼票房的全部数据并做可视化分析. 1.获取url 我们先打开猫眼票房http://piaofang.m ...

  6. cxf 调用 .net webservice

    1.   问题背景          现在我们两套语言并行,其中必然会涉及到不同系统的相互访问. .net 的会员信息是用 webservice  提供服务的.那如何对现有 .net webservi ...

  7. linux 中 NTP 对时过程记录

    1.连接需要对时的服务器 $: ntpdate -u 服务器ip地址 2.写对时任务的脚本 #:crontab -e 选择 2(nano编辑): 59 23 * * * /usr/sbin/ntpda ...

  8. Java并发入门之FutureTask

    Java并发入门之FutureTask 前言: 最近遇到一个项目需要上传图片到服务器,API要求是二进制流,那就跑慢点一点点上传. 于是对多线程从没有应用过的我,决定拿多线程直接应用于代码. 应用Ex ...

  9. OTA升级详解(一)

    不积跬步,无以至千里: 不积小流,无以成江海. 出自荀子<劝学篇> 1.概念解释 OTA是何物? 英文解释为 Over The Air,既空中下载的意思,具体指远程无线方式,OTA 技术可 ...

  10. ORM之单表操作

    ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的 ...