vue.js学习系列-第二篇
一 VUE实例生命周期钩子
1 生命周期函数
定义 生命周期函数就是vue在某一时间点自动执行的函数
2 具体函数
1 new vue()
2 beforeCreate() 数据还没有监听,没有绑定到vue对象实例,同时也没有挂载对象
3 created() 数据已经绑定到了对象实例,但是还没有挂载对象
4 beforeMount() 模板已经编译好了,根据数据和模板已经生成了对应的元素对象,将数据对象关联到了对象的 $el属性
5 mounted() 将$el的内容挂载到了el,相当于我们在jquery执行了$(el).html($el),生成页面上真正的dom
6 deforDestroy() 实例的销毁,vue实例还是存在的,只是解绑了事件的监听还有watcher对象数据与view的绑定,即数据驱动
7 destroy()
8 beforeUpdate() 当data数据改变时,会触发相关函数
9 update()
二 VUE 计算精度特性
1 计算属性调用
1 Vue对象属性
date:{xing:'a',ming:'b'},
computed: { //计算属性,包裹计算方法
fun: function(){
return this.xing+ this.ming
}
调用
<li>{{fun}}</li>
2 VUE对象属性的get set方法
computed: { //计算属性,包裹计算方法
fun: {
get: function(){
return this.xing+ this.ming
},
set: function(value){
value=""//这里是对值的二次处理,value本身是二次传递
}
}
3 总结
1 我们通过computed属性进行数据组合处理,最后返回值,然后进行调用函数对象本身即可
2 计算精度功能如果值没有发生改变就不会重新进行计算,如果发生改变会进行重新计算
3 get set方法进行搭配使用
4 另一种方法实现
date:{xing:'a',ming:'b'},
fun: function(){
return this.xing+ this.ming
}
调用通过 {{fun()}} 也可以实现计算属性
三 VUE中的条件渲染
v-if
v-else-if
v-else
1 必须连在一起写,不能加任何其他标签
2 里面内容为条件表达式
比如 a==3 a(True/False)
3 条件渲染会尽量复用已经存在的DOM
如果想要避免 尽量加上key属性 key代表唯一性
eg:
<div v-if="show" id="app"> <input key="username">用户名</input> </div>
<div v-else><input key="password">密码</input></div>
四 VUE的列表渲染
1 列表
v-for属性
1 列表本身包含下标叫做index
2 不能通过操作列表下标的方式改变数组
循环列表
<div id="app"> <li v-for="item in list">{{item}}</li></div>
<div id="app"> <li v-for="(item,index) of list">{{item}}{{index}}</li></div>
改变列表
1 重新定义数组对象 app1.list[]
2 使用编译方法 app1.list.splice(index,位移,内容) eg:splice(1,1,'a')代表删除下标为1,并且用a代替,起到更新作用
其他函数
push 增加一列 pop 删除最后一列 sort排序 resverse反转
2 对象
v-for属性同样可以循环对象本身
eg <div id="app"> <li v-for="(key,item,index) of duixiang"></div>
改变对象
app1.object.key=value
增减对象属性
只能重新定义对象引用了
vue.js学习系列-第二篇的更多相关文章
- vue.js学习系列-第一篇
VUE系列一 简介 vue是一个兴起的前端js库,是一个精简的MVVM.从技术角度讲,Vue.js专注于 MVVM 模型的 ViewModel 层.它通过双向数据绑定把 View 层和 Mode ...
- vue.js学习系列-第一篇(代码)
<html> <head> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"> ...
- Vue.js学习笔记 第二篇 样式绑定
Class绑定的对象语法 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- Vue.js学习笔记 第一篇 数据绑定
双花括号文本插值 先来个最简单的例子,看完之后立马会用Vue了,是不是很有成就感 <!DOCTYPE html> <html> <head> <meta ch ...
- js学习笔记第二篇
Js笔记整理 1.StringAPI a) 大小写转换:str.toUpperCase();str.toLowerCase(); b) 获取指定位置字符: Str[i]-- ...
- OpenStack学习系列-----第二篇 由一个错误看理解整个架构的重要性
看了openstack没几天,然后就开始试着用Java调用所有的API,第一步得到Credentials的时候成功了,然后第二步,传参数使所有的server信息都列出来的时候报错404.具体描述如下( ...
- 深入理解javascript函数系列第二篇——函数参数
× 目录 [1]arguments [2]内部属性 [3]函数重载[4]参数传递 前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传 ...
- 学习KnockOut第二篇之Counter
学习KnockOut第二篇之Counter 欲看此 ...
- Caffe学习系列——工具篇:神经网络模型结构可视化
Caffe学习系列——工具篇:神经网络模型结构可视化 在Caffe中,目前有两种可视化prototxt格式网络结构的方法: 使用Netscope在线可视化 使用Caffe提供的draw_net.py ...
随机推荐
- win 10 精简组件列表
轻松访问工具 操作中心 应用程序虚拟化(App-V) Telemetry Client (Asimov)(遥测) Assigned Access(按需访问) 自动播放 网络后台传输 备份 生物识别服务 ...
- poium测试库介绍
poium测试库前身为selenium-page-objects测试库,我在以前的文章中也有介绍过:这可能是最简单的Page Object库,项目的核心是基于Page Objects实现元素定位的封装 ...
- 如何在FineUIMvc(ASP.NET MVC)中显示复杂的表格列数据(列表和对象)?
起源 最初,这个问题是知识星球内的一个网友提出的,如何在FineUIMvc中展现复杂的列数据? 在FineUIPro中,我们都知道有一个 TemplateField 模板列可以使用,我们只需要在后台定 ...
- Generetor函数与线程之间的思考
在解析这个问题之前,首先,我们来了解一下es6标准里新增解决异步的两种规范 Promise与Generetor Promise 其实Promise的本质 还是基于js程式的回调处理----这一点看它的 ...
- Linux操作系统的文件链接
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++标题:Linux操作系统的文件链接内容:文件链接时间:2019年 ...
- 软工+C(9): 助教指南,持续更新...
上一篇:提问与回复 下一篇:从命令行开始逐步培养编程能力(Java) 目录: ** 0x00 Handshake ** 0x01 点评 ** 0x02 评分 ** 0x03 知识储备 ** 0x04 ...
- consumer zookeeper is not a recognized option
kafka 创建消费者报错 consumer zookeeper is not a recognized option 在做kafka测试的时候,使用命令bin/kafka-console-consu ...
- DAY22、面向对象
一.复习:1.面向过程与面向对象 过程:程序流程化,可拓展性差 对象:程序流程多样化,可拓展性强 面向对象引入属性 | 方法的概念,通过所属者.语法调用2.拥有名称空间的对象:有__dict__属性, ...
- 洛谷P5119 Convent 题解
题目 很好想的一道二分题,首先,二分一定满足单调性,而题目中非常明显的就是用的车越多,所用时间越少,所以可以枚举时间,判断是否可以比\(m\)少. 然后在二分时,更是要注意下标的一些问题,也要注意车和 ...
- ubuntu下使用ss-qt5
第一步:.安装ss-qt5 通过PPA源安装,仅支持Ubuntu 14.04或更高版本. 打开终端 sudo add-apt-repository ppa:hzwhuang/ss-qt5 sudo a ...