1、表單域修飾符
number :轉(zhuǎn)換為數(shù)值
trim: 去掉開始和結(jié)尾的空格 (中間去不掉)
lazy:將input、事件切換為change事件
2.1自定義指令(獲取元素的焦點(diǎn))
Vue.directive('focus' ,{ //這里的focus是自命名的最好見名知意
inserted : function(e){
e.focus()//獲取元素的焦點(diǎn)}})
<input type="text" v-focus />
2.2帶參數(shù)的自定義指令(改變背景色)
Vue.directive('color' ,{
inserted : function(e,binding){
e.style.backgroudColor = binding.value.color} )??
<input type="text" v-color="{color:green}" />
2.3局部指令(要定義在vue實(shí)例里面)
directives:{ //局部里面要加s
focus:{
inserted:function(e)
e.focus()
}}}
3、計(jì)算屬性 computed
計(jì)算屬性與方法的區(qū)別:計(jì)算屬性是基于依賴進(jìn)行緩存的,而方法不緩存
4汛骂、偵聽器 watch
watch 中的屬性 一定是data 中 已經(jīng)存在的數(shù)據(jù)
當(dāng)需要監(jiān)聽一個(gè)對(duì)象的改變時(shí),普通的watch方法無法監(jiān)聽到對(duì)象內(nèi)部屬性的改變评腺,只有data中的數(shù)據(jù)才能夠監(jiān)聽到變化帘瞭,此時(shí)就需要deep屬性對(duì)對(duì)象進(jìn)行深度監(jiān)聽
5、過濾器
Vue.js允許自定義過濾器蒿讥,可被用于一些常見的文本格式化蝶念。
過濾器可以用在兩個(gè)地方:雙花括號(hào)插值和v-bind表達(dá)式。
過濾器應(yīng)該被添加在JavaScript表達(dá)式的尾部芋绸,由“管道”符號(hào)指示
支持級(jí)聯(lián)操作
過濾器不改變真正的data祸轮,而只是改變渲染的結(jié)果,并返回過濾后的版本
全局注冊(cè)時(shí)是filter侥钳,沒有s的适袜。而局部過濾器是filters,是有s的
6舷夺、生命周期
常用的 鉤子函數(shù)
beforeCreate
在實(shí)例初始化之后苦酱,數(shù)據(jù)觀測和事件配置之前被調(diào)用 此時(shí)data 和 methods 以及頁面的DOM結(jié)構(gòu)都沒有初始化? 什么都做不了
created
在實(shí)例創(chuàng)建完成后被立即調(diào)用此時(shí)data 和 methods已經(jīng)可以使用? 但是頁面還沒有渲染出來
beforeMount
在掛載開始之前被調(diào)用? 此時(shí)頁面上還看不到真實(shí)數(shù)據(jù) 只是一個(gè)模板頁面而已
mountedel
被新創(chuàng)建的vm.$el替換,并掛載到實(shí)例上去之后調(diào)用該鉤子给猾。? 數(shù)據(jù)已經(jīng)真實(shí)渲染到頁面上? 在這個(gè)鉤子函數(shù)里面我們可以使用一些第三方的插件
beforeUpdate
數(shù)據(jù)更新時(shí)調(diào)用疫萤,發(fā)生在虛擬DOM打補(bǔ)丁之前。? 頁面上數(shù)據(jù)還是舊的
updated
由于數(shù)據(jù)更改導(dǎo)致的虛擬DOM重新渲染和打補(bǔ)丁敢伸,在這之后會(huì)調(diào)用該鉤子扯饶。 頁面上數(shù)據(jù)已經(jīng)替換成最新的
beforeDestroy
實(shí)例銷毀之前調(diào)用
destroyed
實(shí)例銷毀后調(diào)用
7、數(shù)組變異方法
push()往數(shù)組最后面添加一個(gè)元素,成功返回當(dāng)前數(shù)組的長度
pop()刪除數(shù)組的最后一個(gè)元素尾序,成功返回刪除元素的值
shift()刪除數(shù)組的第一個(gè)元素钓丰,成功返回刪除元素的值
unshift()往數(shù)組最前面添加一個(gè)元素,成功返回當(dāng)前數(shù)組的長度
splice()有三個(gè)參數(shù)每币,第一個(gè)是想要?jiǎng)h除的元素的下標(biāo)(必選)携丁,第二個(gè)是想要?jiǎng)h除的個(gè)數(shù)(必選),第三個(gè)是刪除 后想要在原位置替換的值
sort()sort()? 使數(shù)組按照字符編碼默認(rèn)從小到大排序,成功返回排序后的數(shù)組
reverse()reverse()? 將數(shù)組倒序兰怠,成功返回倒序后的數(shù)組
8梦鉴、替換數(shù)組不會(huì)改變?cè)?/h1>
filterfilter() 方法創(chuàng)建一個(gè)新的數(shù)組,新數(shù)組中的元素是通過檢查指定數(shù)組中符合條件的所有元素揭保。
concatconcat() 方法用于連接兩個(gè)或多個(gè)數(shù)組肥橙。該方法不會(huì)改變現(xiàn)有的數(shù)組
sliceslice() 方法可從已有的數(shù)組中返回選定的元素。該方法并不會(huì)修改數(shù)組秸侣,而是返回一個(gè)子數(shù)組
filterfilter() 方法創(chuàng)建一個(gè)新的數(shù)組,新數(shù)組中的元素是通過檢查指定數(shù)組中符合條件的所有元素揭保。
concatconcat() 方法用于連接兩個(gè)或多個(gè)數(shù)組肥橙。該方法不會(huì)改變現(xiàn)有的數(shù)組
sliceslice() 方法可從已有的數(shù)組中返回選定的元素。該方法并不會(huì)修改數(shù)組秸侣,而是返回一個(gè)子數(shù)組