Vue跨门槛系列之实例的阐述
学习、使用中结合vue官网的api和教程极佳!
前前篇文章上有提及到vue的简单介绍,详情请戳这里 (初试 Vue.js)
第一部分:
每个 Vue 应用都是通过 Vue 函数创建一个新的 Vue 实例开始的,比如:
var vm = new Vue({
// data、el ...
})
当你创建一个 Vue 实例时,你将传入一个选项对象;
Vue初始化的选项对象包含但不限于el、data、methods、computed、created、filter等等。
也就是说,通过以上使用的这些选项对象可以达到你想要的行为!
一个 Vue 应用由一个通过 new Vue 创建的根 Vue 实例,以及其他可选用/可复用的选项。
需要明白的是:所有的 Vue 组件都是 Vue 实例,并且接受相同的选项对象即可 (一些根实例特有的选项除外)。
第二部分:
当一个 Vue 实例被创建时,它向 Vue 的响应式系统中加入了其 data 对象中能找到的所有的属性;更通俗一点来说,你只要创建了一个vue实例,你可以通过data对象来找到你需要使用的属性。
例如:
var $vm=new Vue({
data:{
a:1,
b:2,
}
});
$vm初始化后,如果需要改变某个属性的值,可以赋值操作进行;比如$vm.a=3,可响应更新视图。
官方的话是:当这些属性的值发生改变时,视图将会产生“响应”,即匹配更新为新的值。
在响应更新视图过程中,会重新渲染。
但,新添加一个属性c,$vm.c='new'; 对c的改动不会触发任何视图的更新(只有当实例被创建时 data 中存在的属性是响应式的。)
总的来说,响应式系统是非常直接的,对状态的 管理非常方便!
第三部分:
如果你在开发过程中,有需要一个属性,但是一开始它为空或不存在,那么你仅需要设置一些初始值即可;
例如:
var $vm=new Vue({
data:{
content:'',
num:0,
list:[],
flag:false,
arr:null,
}
});
在一系列初始化过程中,会同时运行生命周期钩子函数,它是在不同的场景下调用。
比如在开发过程中经常用到的钩子是 created(在实例被创建后执行)、updated(调用时组件 DOM 已经更新) 等等...
var $vm=new Vue({
el:'#main',
data:{
a:1,
b:2,
},
created:function(){
var $this=this; //this指向$vm的实例
console.log($this.a);//print 1
}
});
注意:钩子函数中的this使用!
第四部分:
来自官网的生命周期图:

Vue跨门槛系列之实例的阐述的更多相关文章
- Vue使用Ref跨层级获取组件实例
目录 Vue使用Ref跨层级获取组件实例 示例介绍 文档目录结构 安装vue-ref 根组件自定义方法[使用provide和inject] 分别说明各个页面 结果 Vue使用Ref跨层级获取组件实例 ...
- vue 快速入门 系列 —— Vue 实例的初始化过程
其他章节请看: vue 快速入门 系列 Vue 实例的初始化过程 书接上文,每次调用 new Vue() 都会执行 Vue.prototype._init() 方法.倘若你看过 jQuery 的源码, ...
- 【转】手摸手,带你用vue撸后台 系列四(vueAdmin 一个极简的后台基础模板)
前言 做这个 vueAdmin-template 的主要原因是: vue-element-admin 这个项目的初衷是一个vue的管理后台集成方案,把平时用到的一些组件或者经验分享给大家,同时它也在不 ...
- vue 快速入门 系列 —— vue 的基础应用(上)
其他章节请看: vue 快速入门 系列 vue 的基础应用(上) Tip: vue 的基础应用分上下两篇,上篇是基础,下篇是应用. 在初步认识 vue一文中,我们已经写了一个 vue 的 hello- ...
- vue 快速入门 系列 —— vue-cli 下
其他章节请看: vue 快速入门 系列 Vue CLI 4.x 下 在 vue loader 一文中我们已经学会从零搭建一个简单的,用于单文件组件开发的脚手架:本篇,我们将全面学习 vue-cli 这 ...
- vue 快速入门 系列 —— 使用 vue-cli 3 搭建一个项目(下)
其他章节请看: vue 快速入门 系列 使用 vue-cli 3 搭建一个项目(下) 上篇 我们已经成功引入 element-ui.axios.mock.iconfont.nprogress,本篇继续 ...
- vue 快速入门 系列 —— 实例方法(或 property)和静态方法
其他章节请看: vue 快速入门 系列 实例方法(或 property)和静态方法 在 Vue(自身) 项目结构 一文中,我们研究了 vue 项目自身构建过程,也知晓了 import Vue from ...
- 大白话Vue源码系列(02):编译器初探
阅读目录 编译器代码藏在哪 Vue.prototype.$mount 构建 AST 的一般过程 Vue 构建的 AST 题接上文,上回书说到,Vue 的编译器模块相对独立且简单,那咱们就从这块入手,先 ...
- 大白话Vue源码系列(05):运行时鸟瞰图
阅读目录 Vue 实例的生命周期 实例创建 响应的数据绑定 挂载到 DOM 节点 结论 研究 runtime 一边 Vue 一边源码 初看 Vue 是 Vue 源码是源码 再看 Vue 不是 Vue ...
随机推荐
- 自定义组件-BreadcrumbTreeView 的使用
一.问题概述 树形结构是开发中常用的一种组织数据的结构,不少平台也提供了对应的控件.而在android平台中,出于使用手指操作树形结构不是很方便的原因,并没有提供树形结构控件.但在实际应用中,不可避免 ...
- Python beautifulsoup 选择器 select 选择<meta/>等不需要成对结尾标签未写‘/’
一些不需要成对的标签<meta/> <img/>d等使用bs4的css选择器时出现的情况: 选择某一标签,输出内容超出范围过多 from bs4 import Beautifu ...
- 8种Java排序算法整理
package org.hbz.test; import java.util.ArrayList; import java.util.Arrays; import java.util.List; im ...
- Cell
首先需要创建一个model类,继承于NSObject: 定义两个属性: @property(nonatomic,retain)NSString imageName; @property(nonatom ...
- HTML Input属性
HTML Input 属性 value 属性 value 属性规定输入字段的初始值: readonly 属性 readonly 属性规定输入字段为只读(不能修改): readonly 属性不需要值.它 ...
- [2012-06-21]结合find的awk
源起:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=3754423&page=1&extra=#pid221729 ...
- Android持续集成之Jenkins 部署
Android持续集成之Jenkins 部署 [TOC] 0x00安装 准备工作如下: Tomcat8.5下载地址 Jenkins下载链接 1 将下载的jenkins.war包放至tomcat下的we ...
- HK2使用详解
HK2介绍 组件 生命周期 定义服务 注入服务 HK2介绍 HK2是一个轻量级动态依赖注入框架,它是JSR-330的实现. 组件 在HK2组件模型中,一个组件的功能是通过服务接口-服务实现的模式声明的 ...
- 银河麒麟操作系统U盘手动挂载,出现乱码
使用银河麒麟操作系统,U盘手动挂载,U盘中中文字符显示为乱码?? 对于银河麒麟操作系统的这一问题,可能是因为字符集的原因,需要在mount后加参数: sudo mount –o iochar ...
- 配置HAProxy支持https协议
author:JevonWei 版权声明:原创作品 实现http重定向到https HAProxy 创建CA证书 [root@HAProxy ~]# cd /etc/haproxy/ [root@HA ...