亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue自定義指令詳解

 更新時(shí)間:2021年11月15日 15:48:33   作者:小旺不正經(jīng)  
這篇文章主要為大家介紹了Vue自定義指令,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

Vue自定義指令

自定義指令

注冊(cè)一個(gè)全局指令v-focus,該指令的功能是在頁面加載時(shí)元素獲得焦點(diǎn)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="../js/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<input v-fo>
		</div>
		<script>
            // 注冊(cè)自定義指令
			Vue.directive('fo',{
				inserted:function(el){
                    // 聚焦元素
					el.focus()
				}
			})
			new Vue({
				el: '#app'
			})
		</script>
	</body>
</html>
 

image-20211112151122161

打開界面光標(biāo)直接在輸入框內(nèi)

鉤子函數(shù)

指令定義函數(shù)提供了幾個(gè)鉤子函數(shù)(可選)。

  • bind:只調(diào)用一次,指令第一次綁定到元素時(shí)調(diào)用,可以用這個(gè)鉤子函數(shù)定義一個(gè)在綁定時(shí)執(zhí)行一次的初始化動(dòng)作。
  • inserted:被綁定的元素插入父節(jié)點(diǎn)時(shí)調(diào)用(父節(jié)點(diǎn)存在即可調(diào)用,不必存在于document中)。
  • update:被綁定元素所在的模板更新時(shí)調(diào)用,而不論綁定值是否變化。通過比較更新前后的綁定值,可以忽略不必要的模板更新。
  • componentUpdated:被綁定元素所在模板完成一次更新周期時(shí)調(diào)用。
  • unbind:只調(diào)用一次,指令與元素解綁時(shí)調(diào)用。

鉤子函數(shù)的參數(shù)主要有以下幾項(xiàng)

  • el:指令所綁定的元素,可以用來直接操作DOM。
  • binding:一個(gè)對(duì)象,包含以下屬性
  • name:指令名,不包括v-前綴。
  • value:指令的綁定值,例如v-my-directive=“1+1”,value的值是2。
  • oldValue:指令綁定的前一個(gè)值,僅在update和componentUpdated鉤子中可用,無論值是否改變都可用。
  • expression:綁定值的表達(dá)式或變量名,例如v-my-directive=“1+1”,expression的值是"1+1"。
  • arg:傳給指令的參數(shù),例如v-my-directive:foo,arg的值是"foo"。
  • modifiers:一個(gè)包含修飾符的對(duì)象,例如v-my-directive.foo.bar,修飾符對(duì)象modifiers的值是{foo:true,bar:true}。
  • vnode:Vue編譯生成的虛擬節(jié)點(diǎn)。
  • oldVnode:上一個(gè)虛擬節(jié)點(diǎn),僅在update和componentUpdated鉤子中可用。

輸出相關(guān)屬性

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="../js/vue.js"></script>
	</head>
	<body>
		<div id="app" v-hh:a.b.c="mess">
		</div>
		<script>
			Vue.directive('hh',{
				bind: function(el,binding,vnode){
					var s = JSON.stringify
					el.innerHTML = 'name:'+s(binding.name)+'<br>'+
					'value:'+s(binding.value)+'<br>'+
					'expression:'+s(binding.expression)+'<br>'+
					'argument:'+s(binding.arg)+'<br>'+
					'modifiers:'+s(binding.modifiers)+'<br>'+
					'vnode keys:'+Object.keys(vnode).join(',')
				}
			})
			new Vue({
				el:'#app',
				data:{
					mess:'abc'
				}
			})
		</script>
	</body>
</html>
 

image-20211112163153199

運(yùn)用例子

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="../js/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<div v-hh="{text:'123',c:'blue'}"></div>
		</div>
		<script>
			Vue.directive('hh',function(el,binding){
				el.innerHTML=binding.value.text
				el.style.color=binding.value.c
			})
			new Vue({
				el:'#app'
			})
		</script>
	</body>
</html>
 

image-20211112164831459

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Vue3中使用pnpm搭建monorepo開發(fā)環(huán)境

    Vue3中使用pnpm搭建monorepo開發(fā)環(huán)境

    這篇文章主要為大家介紹了Vue3中使用pnpm搭建monorepo開發(fā)環(huán)境示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Vue如何使用混合Mixins和插件開發(fā)詳解

    Vue如何使用混合Mixins和插件開發(fā)詳解

    這篇文章主要介紹了Vue如何使用混合Mixins和插件開發(fā)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Vue3實(shí)現(xiàn)九宮格抽獎(jiǎng)的示例代碼

    Vue3實(shí)現(xiàn)九宮格抽獎(jiǎng)的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何利用Vue3實(shí)現(xiàn)九宮格抽獎(jiǎng)的功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的可以了解一下
    2022-09-09
  • 探秘Vue異步更新機(jī)制中nextTick的原理與實(shí)現(xiàn)

    探秘Vue異步更新機(jī)制中nextTick的原理與實(shí)現(xiàn)

    nextTick?是?Vue?提供的一個(gè)重要工具,它的作用主要體現(xiàn)在幫助我們更好地處理異步操作,下面就跟隨小編一起來探索一下nextTick的原理與實(shí)現(xiàn)吧
    2024-02-02
  • 解決vue v-for 遍歷循環(huán)時(shí)key值報(bào)錯(cuò)的問題

    解決vue v-for 遍歷循環(huán)時(shí)key值報(bào)錯(cuò)的問題

    今天小編就為大家分享一篇解決vue v-for 遍歷循環(huán)時(shí)key值報(bào)錯(cuò)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue如何實(shí)現(xiàn)本項(xiàng)目頁面之間跳轉(zhuǎn)

    vue如何實(shí)現(xiàn)本項(xiàng)目頁面之間跳轉(zhuǎn)

    這篇文章主要介紹了vue如何實(shí)現(xiàn)本項(xiàng)目頁面之間跳轉(zhuǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue electron應(yīng)用調(diào)exe程序的實(shí)現(xiàn)步驟

    vue electron應(yīng)用調(diào)exe程序的實(shí)現(xiàn)步驟

    這篇文章主要介紹了vue electron應(yīng)用調(diào)exe程序的實(shí)現(xiàn)步驟,用Python寫了一個(gè)本地服務(wù)編譯成exe程序,在electron程序啟動(dòng)后,自動(dòng)執(zhí)行exe程序,文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2024-02-02
  • Vue集成阿里云做滑塊驗(yàn)證的實(shí)踐

    Vue集成阿里云做滑塊驗(yàn)證的實(shí)踐

    滑塊驗(yàn)證是比較常見的人機(jī)鑒別的方法,本文主要介紹了Vue集成阿里云做滑塊驗(yàn)證,具有一定的參考價(jià)值,感興趣的可以了解一下
    2022-01-01
  • Vue 理解之白話 getter/setter詳解

    Vue 理解之白話 getter/setter詳解

    這篇文章主要介紹了Vue getter setter,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • vue3.0自定義指令(drectives)知識(shí)點(diǎn)總結(jié)

    vue3.0自定義指令(drectives)知識(shí)點(diǎn)總結(jié)

    在本篇文章里小編給大家整體了一篇關(guān)于vue3.0自定義指令(drectives)知識(shí)點(diǎn)總結(jié),有興趣的朋友們可以學(xué)習(xí)下。
    2020-12-12

最新評(píng)論