过滤器
- 概念:Vue.js允许自定义过滤器,可被用作一些常见的文本格式化,过滤器可以用在两个地方:mustache插值({{}}双花括号)和v-bind表达式
- 过滤器调用时格式:{{name | 过滤器名称(可以传多个参数)}}
- 过滤器语法:Vue.filter(‘过滤器名称’,function(data,第一个参数,第二个参数){
//过滤器中的function,第一个参数已经被规定死,永远是 过滤器 管道符前面 传递过来的数据
return data+123
})
Vue的生命周期
4个阶段:
- a.创建阶段: 创建组件对象,但是暂时只有data对象,没有虚拟DOM树。所以,这里只能执行对data对象的操作,不能执行对页面中DOM元素的操作。
↓ - b.挂载阶段: 将组件的HTML和数据渲染到页面上。此时,既有data对象,又有虚拟DOM树了。既能操作data对象,又能操作DOM元素。
============ - c.更新阶段: 当data中的数据被更新时
- d.销毁阶段: 除非主动调用$destroy()函数,才会触发销毁阶段。
8个钩子函数
beforeCreate :
表示:刚初始化了一个Vue空的实例对象,这时候,这个对象身上, 只有默认的一些生命周期函数和默认的事件,其他东西都没有创建
注意:在 beforeCreate生命周期函数执行的时候,data和methods中的数据都还没初始化
↓
- a. 创建阶段: 已经创建了组件对象和data对象
created ******* (){ axios.get().then(res=>this.p1=res…) }
注意:在 created中,data和methods中的数据已经初始化,可以使用
↓
↓这里表示Vue开始编译模板,把Vue代码中的那些指令进行执行,
↓最终,在内存中生成一个编译好的最终模板字符串
↓然后,把这个模板字符串,渲染为内存中的DOM
↓此时,只在内存中渲染好了模板并没有把模板挂载到真正页面中去
↓
beforeMount
注意:此函数执行的时候,模板已经在内存中编译好了,但是尚未挂载到页面中去,此时页面还是旧的
↓
↓这一步,将内存中编译好的模板,真实 的 替换到浏览器的页面中去
↓ - b. 挂载阶段: 已经创建了组件对象,data对象和虚拟DOM树
mounted ******* (){ axios.get().then(res=>this.p1=res…) }
注意:mounted 是 实例创建期间的最后一个生命周期函数,当执行完,mounted就表示,实例已经完全创建好了,此时,如果没有其他操作的话,这个实例就静静的,躺在我们的内存中一动不动。
beforeUpdate - c. 更新阶段:
updated
beforeDestroy - d. 销毁阶段:
destroyed