国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Vue自定義指令寫法與個人理解

2024-05-06 15:42:35
字體:
來源:轉載
供稿:網友

什么是Vue指令?

指令是一種可以附加到DOM元素的微命令(tiny commands). 它們通常以"v-"作為前綴, 以方便Vue知道你在使用一種特殊的標記, 從而確保語法的一致性. 如果你需要對HTML元素的低級別(low-level)訪問來控制一些行為, 它們通常很有用.

如果你正在使用Vue(或者Angular), 你可能已經很熟悉其中的一些指令, 如: v-if, v-else等等. 我們將從了解一些基礎開始, 但是如果你更愿意直接看例子, 請直接往下滾動. 這些例子也能很好的讓你理解這些概念.

以下是一些指令的使用方法, 以及對應的例子片段. 這些例子不是規定性的, 它們只是一些用例. 這里的"例子"實際上是"指令".

v-example: 這將實例化一個指令, 但不接受任何參數. 雖然不帶參數的指令, 在使用的過程中并不是很靈活, 但是你仍然可以通過這種類型的指令對DOM元素做一些操作.

v-example="value": 這將傳遞一個值給指令, 并且該指令根據該值計算出要做的操作.

<div v-if="stateExample">I will show up if stateExample is true</div>

v-example="'string'": 這將讓你把'string'作為一個表達式.

<p v-html="'<strong>this is an example of a string in some text</strong>'"></p>

v-example:arg="value": 這允許我們傳入一個參數給指令. 下面的例子中, 我們綁定到一個類, 將其樣式化為一個對象, 單獨存儲.

<div v-bind:class="someClassObject"></div>

v-example:arg.modifier="value": 這允許我們使用修飾語. 下面的例子中, 允許我們在點擊事件時, 調用preventDefault().

<button v-on:submit.prevent="onSubmit"></button>

理解Vue自定義指令

既然我們已經大致過了一遍所有的我們所用過的指令類型方法, 讓我們想一想我們如何通過自己編寫的自定義指令來實現它們? 使用自定義指令的一個很好的例子是滾動事件, 讓我們看看如何實現它.

首先, 最基本的是如何創建一個全局的指令. (是的, 它什么也不做.) 僅僅是創建了一個指令.

Vue.directive('tack');

HTML:

<p v-tack>This element has a directive on it</p>

我們有幾個可用的鉤子, 每個鉤子可以選擇一些參數. 鉤子如下:

bind: 一旦指令附加到元素時觸發
inserted: 一旦元素被添加到父元素時觸發
update: 每當元素本身更新(但是子元素還未更新)時觸發
componentUpdate: 每單組件和子組件被更新時觸發
unbind: 一旦指令被移除時觸發

就個人而言, bind和update也許是這五個里面最有用的兩個鉤子了.
每個鉤子都有el, binding, 和vnode參數可用. update和componentUpdated鉤子還暴露了oldVnode, 以區分傳遞的舊值和較新的值.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 泰兴市| 汶川县| 松滋市| 广昌县| 水富县| 新蔡县| 交口县| 万山特区| 龙岩市| 息烽县| 密山市| 松江区| 宁乡县| 武穴市| 洪江市| 二连浩特市| 无极县| 临潭县| 民乐县| 贺州市| 武汉市| 丰顺县| 灌南县| 新安县| 荔波县| 视频| 闽侯县| 玉林市| 凉山| 湖州市| 福州市| 大洼县| 武宣县| 汝阳县| 井陉县| 中牟县| 临潭县| 新营市| 广饶县| 合阳县| 时尚|