最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue自定義指令詳解

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

Vue自定義指令

自定義指令

注冊(cè)一個(gè)全局指令v-focus,該指令的功能是在頁(yè)面加載時(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)用,而不論綁定值是否變化。通過(guò)比較更新前后的綁定值,可以忽略不必要的模板更新。
  • componentUpdated:被綁定元素所在模板完成一次更新周期時(shí)調(diào)用。
  • unbind:只調(diào)用一次,指令與元素解綁時(shí)調(diào)用。

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

  • el:指令所綁定的元素,可以用來(lái)直接操作DOM。
  • binding:一個(gè)對(duì)象,包含以下屬性
  • name:指令名,不包括v-前綴。
  • value:指令的綁定值,例如v-my-directive=“1+1”,value的值是2。
  • oldValue:指令綁定的前一個(gè)值,僅在update和componentUpdated鉤子中可用,無(wú)論值是否改變都可用。
  • 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é)

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

相關(guān)文章

  • Ant?Design?of?Vue?select框獲取key和name的問(wèn)題

    Ant?Design?of?Vue?select框獲取key和name的問(wèn)題

    這篇文章主要介紹了Ant?Design?of?Vue?select框獲取key和name的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • vue從后端獲取到文件的?url?地址及前端根據(jù)?url?地址下載文件的實(shí)現(xiàn)思路

    vue從后端獲取到文件的?url?地址及前端根據(jù)?url?地址下載文件的實(shí)現(xiàn)思路

    這篇文章主要介紹了vue?中從后端獲取到文件的?url?地址及前端根據(jù)?url?地址下載文件,項(xiàng)目用的是?vben?admin?框架,用的是?vue3?+?TS,后端返回的是文件的?url?地址,對(duì)vue后端獲取?url?地址的相關(guān)知識(shí)感興趣的朋友一起看看吧
    2024-02-02
  • 使用Plotly.js在Vue中創(chuàng)建交互式散點(diǎn)圖的示例代碼

    使用Plotly.js在Vue中創(chuàng)建交互式散點(diǎn)圖的示例代碼

    Plotly.js是一個(gè)功能強(qiáng)大的JavaScript庫(kù),用于創(chuàng)建交互式數(shù)據(jù)可視化,它支持各種圖表類型,包括散點(diǎn)圖、折線圖和直方圖,在Vue.js應(yīng)用程序中,Plotly.js可用于創(chuàng)建動(dòng)態(tài)且引人入勝的數(shù)據(jù)可視化,本文介紹了使用Plotly.js在Vue中創(chuàng)建交互式散點(diǎn)圖,需要的朋友可以參考下
    2024-07-07
  • 詳解Vue中狀態(tài)管理Vuex

    詳解Vue中狀態(tài)管理Vuex

    vuex是一個(gè)專門為vue.js設(shè)計(jì)的狀態(tài)管理模式,并且也可以使用devtools進(jìn)行調(diào)試。
    2017-05-05
  • 前端vue3搭建超詳細(xì)指南(快速上手搭建)

    前端vue3搭建超詳細(xì)指南(快速上手搭建)

    這篇文章主要介紹了使用Vue?3和Element-plus搭建前端項(xiàng)目的過(guò)程,包括項(xiàng)目搭建、Element-plus安裝和引入、axios安裝、sass使用、app.vue配置、組件創(chuàng)新、路由配置以及使用輔助插件來(lái)提高開發(fā)效率,需要的朋友可以參考下
    2025-02-02
  • 使用vue控制元素顯示隱藏方式

    使用vue控制元素顯示隱藏方式

    這篇文章主要介紹了使用vue控制元素顯示隱藏方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Vue關(guān)于Element UI中的文本域換行問(wèn)題

    Vue關(guān)于Element UI中的文本域換行問(wèn)題

    這篇文章主要介紹了Vue關(guān)于Element UI中的文本域換行問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue引入靜態(tài)js文件的方法

    vue引入靜態(tài)js文件的方法

    這篇文章主要介紹了vue引入靜態(tài)js文件的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 一篇文章帶你吃透Vue生命周期(結(jié)合案例通俗易懂)

    一篇文章帶你吃透Vue生命周期(結(jié)合案例通俗易懂)

    這篇文章主要給大家介紹了關(guān)于如何通過(guò)一篇文章帶你吃透Vue生命周期,文章通過(guò)結(jié)合案例更加的通俗易懂,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-02-02
  • 淺談VUE uni-app 常用API

    淺談VUE uni-app 常用API

    這篇文章主要介紹了uni-app 常用API,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10

最新評(píng)論

济南市| 延寿县| 新安县| 集安市| 紫金县| 聂拉木县| 靖宇县| 武陟县| 萨迦县| 永清县| 天峨县| 黑山县| 美姑县| 若尔盖县| 苍南县| 龙岩市| 四川省| 织金县| 嵊州市| 阜宁县| 讷河市| 苏尼特右旗| 鹤壁市| 晋城| 侯马市| 义马市| 绩溪县| 迁西县| 丹凤县| 洞口县| 临安市| 大港区| 德昌县| 榆树市| 类乌齐县| 凤凰县| 灯塔市| 余江县| 东莞市| 汉沽区| 海宁市|