国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

前端學(xué)習(xí)---vue2--指令修飾符詳解

這篇具有很好參考價(jià)值的文章主要介紹了前端學(xué)習(xí)---vue2--指令修飾符詳解。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

寫在前面:
前端感覺系統(tǒng)學(xué)起來還行,我也不曉得我是咋快速入門1個(gè)月就開始看實(shí)習(xí)公司代碼的。然后現(xiàn)在開始系統(tǒng)復(fù)習(xí),然后感覺有的封裝的還可以,不過就是我不曉得,像這個(gè)指令修飾符,其實(shí)說邏輯難寫,倒是也沒有,就是簡(jiǎn)單不用自己寫.
就像后端判斷字符串是否為空,本來很簡(jiǎn)單的事,但是我還是喜歡用StringUtils.hasText()

前置內(nèi)容:
1.vue指令基礎(chǔ)

指令修飾符介紹

所謂指令修飾符就是通過“.”指明一些指令后綴 不同的后綴封裝了不同的處理操作 —> 簡(jiǎn)化代碼

在學(xué)習(xí)指令的時(shí)候就提到過一些修飾符,可以簡(jiǎn)化代碼。這里在來系統(tǒng)學(xué)習(xí)一下修飾符
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

修飾符的使用

基礎(chǔ)使用

不加修飾符的input

<input v-model="a">

前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
現(xiàn)在加一個(gè).trim

<input v-model.trim="a">

可以看到前面的空格全部沒了,但是中間的是不影響的,畢竟這不是把空格替換為空。
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
額外的,在el-input的trim修飾符做了額外的加強(qiáng).
這樣是不能在前后輸入空格的,輸入的會(huì)全部刪掉。這個(gè)效果發(fā)幾個(gè)圖演示不出,就不演示了。

<el-input v-model.trim="a"></el-input>

多修飾符

如果需要多修飾符直接在后面加就可以了

@事件名.stop.prevent —>可以連用 即阻止事件冒泡也阻止默認(rèn)行為

修飾符大全

v-model

.trim

輸入首尾空格過濾,使用里面演示過了

.number

輸入字符串轉(zhuǎn)為有效的數(shù)字
el-input同樣也有所不同

    <el-input v-model.number="a"></el-input>
    <input v-model.number="a" />

先輸入字母,發(fā)現(xiàn)沒用啥作用
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
先輸入數(shù)字在輸入字母,el-input會(huì)直接不顯示,但是input的會(huì)在取消焦點(diǎn)后刪除字母
還有我們會(huì)發(fā)現(xiàn)data中的a數(shù)據(jù)是數(shù)字格式,而不是和上面一樣的字符串。
其轉(zhuǎn)數(shù)字的能力也只是最大努力去實(shí)現(xiàn),轉(zhuǎn)不了的會(huì)變成字母
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
input的會(huì)在取消焦點(diǎn)后刪除字母
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
如果是數(shù)字+字母在輸入了數(shù)字呢
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
會(huì)把出現(xiàn)字母開始,后面的所有全部刪掉

lazy

懶更新,原本是改變了就直接改了,加上后是失去焦點(diǎn)之后才會(huì)更新。
嘗試過,lazy修飾符在elementui 不起作用

    <el-input v-model.lazy="a"></el-input>
    <input v-model.lazy="a" />

input不實(shí)時(shí)刷新
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
el-input實(shí)時(shí)更新,lazy不起作用

前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

v-bind

prop

作為一個(gè) DOM property 綁定而不是作為 attribute 綁定

這個(gè)我好像沒想到案例,留個(gè)心眼。

dom屬性和html屬性區(qū)別

  • 屬性由 HTML 定義。屬性由 DOM 定義 (文檔對(duì)象模型)。
  • 一些 HTML 屬性與屬性的 1:1 映射。 是一個(gè) 例。id
  • 某些 HTML 屬性沒有相應(yīng)的屬性。 是 舉個(gè)例子。colspan
  • 某些 DOM 屬性沒有相應(yīng)的屬性。 就是一個(gè)例子。textContent
  • 許多 HTML 屬性似乎映射到屬性…但不在 你可能會(huì)想!

.camel

將 kebab-case attribute 名轉(zhuǎn)換為 camelCase

.sync

語法糖,會(huì)擴(kuò)展成一個(gè)更新父組件綁定值的 v-on 偵聽器。
簡(jiǎn)寫父子組件傳值用的,在組件介紹在說。

v-on 事件修飾符

寫為@事件.修飾符

.stop

阻止冒泡
相當(dāng)于調(diào)用 event.stopPropagation()。
首先看這樣的代碼

<template>
  <div id="app">
    <div style="height: 500px;width: 200px;background-color: red" @click="fu">
      <div style="height: 200px;width: 100%;background-color: blueviolet;" @click="zi">

      </div>
    </div>

  </div>
</template>
<script>

export default {
  methods: {
    fu() {
      console.log('父')
    },
    zi() {
      console.log('子')
    }
  }
}
</script>

點(diǎn)擊藍(lán)色區(qū)域
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
點(diǎn)擊紅色
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
我們發(fā)現(xiàn)點(diǎn)擊子的時(shí)候父也會(huì)執(zhí)行。因?yàn)樽拥膮^(qū)域有父。
我們可以在子的代碼修改如下

    zi(e) {
      e.stopPropagation()
      console.log('子')
    }

點(diǎn)擊就只有子了
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
而.stop可以省掉這個(gè)代碼,修改如下。

<template>
  <div id="app">
    <div style="height: 500px;width: 200px;background-color: red" @click="fu">
      <div style="height: 200px;width: 100%;background-color: blueviolet;" @click.stop="zi">

      </div>
    </div>

  </div>
</template>
<script>

export default {
  methods: {
    fu() {
      console.log('父')
    },
    zi() {
      console.log('子')
    }
  }
}
</script>

前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

.prevent

阻止默認(rèn)行為
相當(dāng)于調(diào)用 event.preventDefault()。

最典型的就是a標(biāo)簽

    <a href="https://www.baidu.com"  @click="click">百度</a>

    click() {
      console.log(111)
    }

點(diǎn)擊后會(huì)打印,也會(huì)跳轉(zhuǎn)
在click加上prevent就只會(huì)打印了

    <a href="https://www.baidu.com" @click.prevent="click">百度</a>

.capture

添加事件偵聽器時(shí)使用 capture 模式。
監(jiān)聽子組件的冒泡事件,先觸發(fā)帶有該修飾符的元素。若有多個(gè)該修飾符,則由外而內(nèi)觸發(fā)。

    <div style="height: 500px;width: 200px;background-color: red" @click.capture="fu">
      <div style="height: 300px;width: 200px;background-color: aliceblue " @click="zhong">
        <div style="height: 200px;width: 100%;background-color: blueviolet;" @click="zi">

點(diǎn)擊藍(lán),先出藍(lán),在本被點(diǎn)擊的,在冒泡。
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
如果和stop使用會(huì)怎么樣,會(huì)發(fā)現(xiàn)父執(zhí)行中不執(zhí)行。
stop阻止的是冒泡,而capture不是冒泡
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

.self

只當(dāng)事件是從偵聽器綁定的元素本身觸發(fā)時(shí)才觸發(fā)回調(diào)。
來做幾個(gè)小實(shí)驗(yàn)。

    <div style="height: 500px;width: 200px;background-color: red" @click="fu">
      <div style="height: 300px;width: 200px;background-color: aliceblue " @click.self="zhong">
        <div style="height: 200px;width: 100%;background-color: blueviolet;" @click="zi">

點(diǎn)擊中
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
點(diǎn)擊子
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
接下來在中加上stop

    <div style="height: 500px;width: 200px;background-color: red" @click="fu">
      <div style="height: 300px;width: 200px;background-color: aliceblue " @click.self.stop="zhong">
        <div style="height: 200px;width: 100%;background-color: blueviolet;" @click="zi">

點(diǎn)擊子,發(fā)現(xiàn)父執(zhí)行了,但是中不執(zhí)行,中不在冒泡中,所有沒用阻止冒泡
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

點(diǎn)擊中,發(fā)現(xiàn)只有中。
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

.native

監(jiān)聽組件根元素的原生事件。
在父組件中給子組件綁定一個(gè)原生的事件,就將子組件變成了普通的HTML標(biāo)簽,不加’. native’事件是無法觸 發(fā)的。

    <HelloWorld @click="fu"></HelloWorld>

此時(shí)點(diǎn)擊頁面沒用反應(yīng)

加上

    <HelloWorld @click.native="fu"></HelloWorld>

前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

.once

只觸發(fā)一次回調(diào)。
點(diǎn)擊事件最多被觸發(fā)一次
后面的就不會(huì)在執(zhí)行了

.passive

以 { passive: true } 模式添加偵聽器
就是會(huì)執(zhí)行默認(rèn)行為
瀏覽器都會(huì)去查詢一下是否有preventDefault阻止該次事件的默認(rèn)動(dòng)作。我們加上passive就是為了告訴瀏覽器,不用查詢了,我們沒用preventDefault阻止默認(rèn)動(dòng)作。

鼠標(biāo)按鍵修飾符

這部分畢竟簡(jiǎn)單就演示一個(gè)了

.left

只當(dāng)點(diǎn)擊鼠標(biāo)左鍵時(shí)觸發(fā)。

.right

只當(dāng)點(diǎn)擊鼠標(biāo)右鍵時(shí)觸發(fā)。

   <div style="height: 500px;width: 200px;background-color: red" @click.right="fu">
      <div style="height: 300px;width: 200px;background-color: aliceblue " @click="zhong">
        <div style="height: 200px;width: 100%;background-color: blueviolet;" @click="zi">
        </div>

只有右鍵才執(zhí)行
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

.middle

只當(dāng)點(diǎn)擊鼠標(biāo)中鍵時(shí)觸發(fā)。

.{keyCode | keyAlias}按鍵修飾符

只當(dāng)事件是從特定鍵觸發(fā)時(shí)才觸發(fā)回調(diào)。
最實(shí)用的就是input框按下回車進(jìn)行搜索啥的事件。

 <input v-model="a" @keyup.enter="fu"></input>

按下空格打印
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)
還可以通過點(diǎn)按鍵碼來

    <input v-model="a" @keyup.65="loga"/>

65是a
前端學(xué)習(xí)---vue2--指令修飾符詳解,前端,前端,學(xué)習(xí)

按鍵 keyCode
0-9 48-57
a-z/A-Z 65-90
F1-F24 112-135
BackSpace(退格) 8
Tab 9
Enter(回車) 13
Caps_Lock(大寫鎖定) 20
Space(空格鍵) 32
Left(左箭頭) 37
up(上箭頭) 38
Right(右箭頭) 39
Down(下箭頭) 40

別名就是.enter文章來源地址http://www.zghlxwxcb.cn/news/detail-633318.html

按鍵 別名
.delete delete(刪除)/BackSpace(退格)
.tab Tab
.enter Enter
.esc Esc
.space Space
.left Left
.up Up
.right Right
.down Down
.ctrl Ctrl
.alt Alt
.shift Shift
.meta windows中為window鍵,mac中為command鍵

到了這里,關(guān)于前端學(xué)習(xí)---vue2--指令修飾符詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 前端框架學(xué)習(xí) Vue (1) 概念,常用指令

    前端框架學(xué)習(xí) Vue (1) 概念,常用指令

    ? ? ? ? Vue是一個(gè)用于 構(gòu)建用戶界面 的 漸進(jìn)式 框架 ? ? ? ? 1.構(gòu)建用戶界面 :基于數(shù)據(jù)動(dòng)態(tài)渲染頁面 ? ? ? ? ? ? ? ? ? ? ? 2.漸進(jìn)式: 循序漸進(jìn)的學(xué)習(xí)(學(xué)一點(diǎn)就能用一點(diǎn)) ?????????????????(1)Vue核心包開發(fā) ? ? ? ? ? ? ? ? ? ? ? ? 場(chǎng)景:局部模塊改造 ? ? ? ? ?

    2024年01月22日
    瀏覽(70)
  • 前端技術(shù)學(xué)習(xí)第九講:VUE基礎(chǔ)語法---VUE常用指令

    前端技術(shù)學(xué)習(xí)第九講:VUE基礎(chǔ)語法---VUE常用指令

    在VUE學(xué)習(xí)中,通常使用相關(guān)指令使VUE對(duì)象中的內(nèi)容與網(wǎng)頁進(jìn)行掛載綁定,是我們的數(shù)據(jù)與視圖之間產(chǎn)生關(guān)聯(lián),完成漸進(jìn)式動(dòng)態(tài)效果。VUE指令都會(huì)以“v-”開頭。 指令名 描述 v-text 將文本內(nèi)容掛載到頁面元素中 v-html 將html代碼展示到頁面元素中 v-bind 將內(nèi)容解析成為js,綁定至頁

    2024年02月13日
    瀏覽(22)
  • 前端學(xué)習(xí)---vue2--選項(xiàng)/數(shù)據(jù)--data-computed-watch-methods-props

    前端學(xué)習(xí)---vue2--選項(xiàng)/數(shù)據(jù)--data-computed-watch-methods-props

    寫在前面: vue提供了很多數(shù)據(jù)相關(guān)的。 簡(jiǎn)單的說就是進(jìn)行雙向綁定的區(qū)域。 vue實(shí)例的數(shù)據(jù)對(duì)象,會(huì)把data的數(shù)據(jù)轉(zhuǎn)換成getter和setter,從而可以進(jìn)行響應(yīng)式的變化, vue實(shí)例創(chuàng)建后,可以通過vm.$data.x獲取data里面的x,但同時(shí)vue實(shí)例也代理了其中的對(duì)象,所以我們一般使用簡(jiǎn)單的

    2024年02月14日
    瀏覽(59)
  • vue2 vue中的常用指令

    vue2 vue中的常用指令

    1.前端必備技能 2.崗位多,絕大互聯(lián)網(wǎng)公司都在使用Vue 3.提高開發(fā)效率 4.高薪必備技能(Vue2+Vue3) 概念:Vue (讀音 /vju?/,類似于 view) 是一套 **構(gòu)建用戶界面 ** 的 漸進(jìn)式 框架 Vue2官網(wǎng):https://v2.cn.vuejs.org/ 1.什么是構(gòu)建用戶界面 基于數(shù)據(jù) 渲染出用戶可以看到的 界面 2.什么是漸

    2024年02月11日
    瀏覽(18)
  • vue2 自定義指令,插槽

    vue2 自定義指令,插槽

    1.自定義指令 基本語法(全局、局部注冊(cè)) 指令的值 v-loading的指令封裝 2.插槽 默認(rèn)插槽 具名插槽 作用域插槽 1.指令介紹 內(nèi)置指令: v-html、v-if、v-bind、v-on … 這都是Vue給咱們內(nèi)置的一些指令,可以直接使用 自定義指令:同時(shí)Vue也支持讓開發(fā)者,自己注冊(cè)一些指令。這些指

    2024年02月11日
    瀏覽(22)
  • Vue2-收集表單數(shù)據(jù)、過濾器、內(nèi)置指令與自定義指令、Vue生命周期

    Vue2-收集表單數(shù)據(jù)、過濾器、內(nèi)置指令與自定義指令、Vue生命周期

    ??:我徒越萬重山 千帆過 萬木自逢春 更多Vue知識(shí)請(qǐng)點(diǎn)擊——Vue.js 1、不同標(biāo)簽的value屬性 若: input type=\\\"text\\\"/ 普通輸入框,則v-model收集的是value值,用戶輸入的就是value值。 若: input type=\\\"radio\\\"/ 單選框,則v-model收集的是value值,且要給標(biāo)簽配置value值。 若: input type=\\\"checkb

    2024年02月13日
    瀏覽(55)
  • 【vue2第十三章】自定義指令 自定義v-loading指令

    【vue2第十三章】自定義指令 自定義v-loading指令

    像 v-html,v-if,v-for都是vue內(nèi)置指令,而我們也可以封裝自定義指令,提升編碼效率。 什么是自定義指令? 自己定義的一些指令,可以進(jìn)行一些dom操作,擴(kuò)展格外的功能。比如讓圖片懶加載,讓input自動(dòng)聚焦。 自定義指令又分為全局注冊(cè)和局部注冊(cè)。 使用方法則是與內(nèi)置指令

    2024年02月09日
    瀏覽(27)
  • vue自定義指令v-loading(vue2和vue3)

    vue自定義指令v-loading(vue2和vue3)

    ? 1. 目錄結(jié)構(gòu): 2. 代碼實(shí)現(xiàn)? /directives/loading/loading.vue ? ?loading效果頁面(此處使用的antd下面的組件,可自定義) /directives/loading/loading.js (實(shí)現(xiàn)loading組件的插入及銷毀) /directives/loading/index.js (loading指令的注冊(cè)) 3. 全局引入(main.js文件) 4. 使用 1. 目錄結(jié)構(gòu) 2. 代碼實(shí)現(xiàn)

    2023年04月23日
    瀏覽(32)
  • vue2--1. 內(nèi)容渲染指令 2. 屬性綁定指令 3. 事件綁定 4. v-model 指令 5. 條件渲染指令

    2. 屬性綁定指令 3. 事件綁定 4. v-model 指令 5. 條件渲染指令) List item 推薦大家安裝的 VScode 中的 Vue 插件 Vue 3 Snippets https://marketplace.visualstudio.com/items?itemName=hollowtree.vue-snippets Vetur https://marketplace.visualstudio.com/items?itemName=octref.vetur 什么是 vue 構(gòu)建用戶界面 用 vue 往 html 頁面中填充

    2024年02月05日
    瀏覽(52)
  • Vue2技能樹(3)-聲明式渲染、指令大全、生命周期函數(shù)

    ?? 點(diǎn)贊,你的認(rèn)可是我創(chuàng)作的動(dòng)力! ?? 收藏,你的青睞是我努力的方向! ?? 評(píng)論,你的意見是我進(jìn)步的財(cái)富! Vue2技能樹(1)-介紹、導(dǎo)入使用、響應(yīng)式數(shù)據(jù)綁定、組件化開發(fā) vue2技能樹(2)-模板語法、vue的工具鏈、漸進(jìn)式框架 Vue2技能樹(3)-聲明式渲染、指令大全、生命周

    2024年02月07日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包