Artikel ini akan memberi anda pemahaman ringkas tentang pengubah suai dalam Vue, dan meringkaskan beberapa pengubah suai dan kaedah penulisan yang biasa saya harap ia akan membantu semua orang.
1 Apakah itu pengubah
Dalam Vue
, pengubah suai mengendalikan banyak butiran acara DOM
, supaya kita tidak perlu lagi menghabiskan banyak masa untuk menangani perkara-perkara yang menyusahkan ini, tetapi boleh mempunyai lebih tenaga untuk memberi tumpuan kepada pemprosesan logik program. [Cadangan berkaitan: tutorial video vuejs] Pengubah suai dalam
vue
dibahagikan kepada lima jenis berikut:
- Pengubah suai borang
- Pengubah suai acara
- Pengubah suai butang tetikus
- Pengubah nilai utama
- pengubah suai v-bind
2. Pengubah suai Biasa
2.1 Pengubah suai borang
Apabila kita mengisi borang, teg yang paling biasa digunakan ialah teg input
dan arahan yang paling biasa digunakan ialah v-model
Pengubah suai tentang borang adalah seperti berikut:
- malas
- trim
- nombor
1. malas
Secara lalai, v-model
akan mengemas kini data selepas setiap acara input
. Anda boleh menambah pengubah suai lazy
untuk mengemas kini data selepas setiap acara change
sebaliknya:
<input> <p>{{value}}</p>
2 trim
jika anda mahu Secara lalai, ruang pada kedua-dua hujung input pengguna dialih keluar secara automatik Anda boleh menambah v-model
pengubah suai selepas .trim
:
<input>
3 anda mahu input pengguna ditukar kepada nombor secara automatik, anda boleh menambah pengubah suai selepas
untuk mengurus input:v-model
.number
<input>
Pengubah peristiwa memproses penangkapan dan sasaran acara Mereka mempunyai pengubah berikut:
berhenti
- halang
- sendiri
- sekali
- tangkap
- pasif
- asli
- 1 henti
menghalang risiko acara Bubble, bersamaan dengan panggilan. kaedah , acara klik akan berhenti menghantar
event.stopPropagation
<div> <button>ok</button> </div> //只输出1
menghalang kelakuan lalai acara, yang bersamaan dengan dipanggil dan acara serah tidak lagi memuatkan semula halaman
event.preventDefault
3 diri
Hanya apabila event.target ialah elemen itu sendiri Pencetus. pengendali acara, contohnya: pengendali acara tidak datang daripada elemen kanak-kanak
Anda perlu memberi perhatian kepada susunan panggilan apabila menggunakan pengubah suai, kerana kod yang berkaitan dijana dalam susunan yang sama. Jadi menggunakan
akan menghalang gelagat lalai semua acara klik pada elemen<div>...</div>dan elemen anak
manakalahanya akan menghalang gelagat lalai acara klik pada elemen itu sendiri.
@click.prevent.self
@click.self.prevent
4 sekali
Selepas mengikat acara, ia hanya boleh dicetuskan sekali, dan ia tidak akan dicetuskan untuk kali kedua
5. Tangkapan
<button>ok</button>
Apabila menambahkan pendengar acara, gunakan mod tangkapan Contohnya: peristiwa yang menunjuk ke elemen dalaman diproses secara luaran sebelum diproses oleh elemen dalaman. Jadikan peristiwa pencetus dari peringkat atas yang mengandungi elemen ini ke bawah
capture
6 pasif
<div> obj1 <div> obj2 <div> obj3 <div> obj4 </div> </div> </div> </div> // 输出结构: 1 2 4 3
Di bahagian mudah alih, apabila kita mendengar acara tatal. elemen , akan terus mencetuskan acara dan menjadikan halaman web kami tersekat Oleh itu, apabila kami menggunakan pengubah suai ini, ia adalah bersamaan dengan menambah pengubah pada acara
. Tingkah laku lalaionscroll
acara menatal (menatal) akan berlaku serta-merta dan bukannya menunggu onscroll
selesai, sekiranya ia mengandungi pengubah suai .lazy
onScroll
event.preventDefault()
secara amnya digunakan untuk sentuhan Pendengar acara boleh digunakan untuk
<div>...</div>.
.passive
Jangan gunakan dan
telah menunjukkan kepada penyemak imbas bahawa andatidak mahu kelakuan lalai
.passive
menyekat peristiwa. Jika anda melakukan ini,.prevent
akan diabaikan dan penyemak imbas akan memberikan amaran..passive
7. native
让组件变成像html
内置标签那样监听根元素的原生事件,否则组件上使用 v-on
只会监听自定义事件
<my-component></my-component>
使用.native修饰符来操作普通HTML标签是会令事件失效的
2.3 鼠标按钮修饰符
鼠标按钮修饰符针对的就是左键、右键、中键点击,有如下:
- left 左键点击
- right 右键点击
- middle 中键点击
<button>ok</button> <button>ok</button> <button>ok</button>
2.4 键盘修饰符
键盘修饰符是用来修饰键盘事件(onkeyup
,onkeydown
)的,有如下:
keyCode
存在很多,但vue
为我们提供了别名,分为以下两种:
- 普通键(enter、tab、delete、space、esc、up...)
- 系统修饰键(ctrl、alt、meta、shift...)
// 只有按键为keyCode的时候才触发 <input>
2.5 v-bind修饰符
v-bind修饰符主要是为属性进行操作,用来分别有如下:
- async
- prop
- camel
1. async
能对props
进行一个双向绑定
//父组件 <comp></comp> //子组件 this.$emit('update:myMessage',params);
以上这种方法相当于以下的简写
//父亲组件 <comp></comp> func(e){ this.bar = e; } //子组件js func2(){ this.$emit('update:myMessage',params); }
使用async
需要注意以下两点:
- 使用
sync
的时候,子组件传递的事件名格式必须为update:value
,其中value
必须与子组件中props
中声明的名称完全一致 - 注意带有
.sync
修饰符的v-bind
不能和表达式一起使用 - 将
v-bind.sync
用在一个字面量的对象上,例如v-bind.sync=”{ title: doc.title }”
,是无法正常工作的
2. props
设置自定义标签属性,避免暴露数据,防止污染HTML结构
<input>
3. camel
将命名变为驼峰命名法,如将 view-Box
属性名转换为 viewBox
<svg></svg>
三、应用场景
根据每一个修饰符的功能,我们可以得到以下修饰符的应用场景:
- .stop:阻止事件冒泡
- .native:绑定原生事件
- .once:事件只执行一次
- .self :将事件绑定在自身身上,相当于阻止事件冒泡
- .prevent:阻止默认事件
- .caption:用于事件捕获
- .once:只触发一次
- .keyCode:监听特定键盘按下
- .right:右键
Atas ialah kandungan terperinci Apakah pengubah suai dalam Vue? Ringkasan pengubah suai biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

vue中props可以传递函数;vue中可以将字符串、数组、数字和对象作为props传递,props主要用于组件的传值,目的为了接收外面传过来的数据,语法为“export default {methods: {myFunction() {// ...}}};”。

本篇文章带大家聊聊vue指令中的修饰符,对比一下vue中的指令修饰符和dom事件中的event对象,介绍一下常用的事件修饰符,希望对大家有所帮助!

如何覆盖组件库样式?下面本篇文章给大家介绍一下React和Vue项目中优雅地覆盖组件库样式的方法,希望对大家有所帮助!

react与vue的虚拟dom没有区别;react和vue的虚拟dom都是用js对象来模拟真实DOM,用虚拟DOM的diff来最小化更新真实DOM,可以减小不必要的性能损耗,按颗粒度分为不同的类型比较同层级dom节点,进行增、删、移的操作。


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa
