cari
Rumahhujung hadapan webView.jsCara menggunakan Vue dan Element-UI untuk melaksanakan logik pengesahan kompleks borang

Cara menggunakan Vue dan Element-UI untuk melaksanakan logik pengesahan kompleks borang

Jul 22, 2023 am 08:15 AM
vuebentuklogikelement-uiPengesahan kompleks

Cara menggunakan Vue dan Element-UI untuk melaksanakan logik pengesahan kompleks borang

Pengenalan:
Dalam membangunkan aplikasi web, pengesahan borang adalah keperluan yang kerap berlaku. Pengesahan borang boleh memastikan bahawa data yang dimasukkan pengguna mematuhi format atau peraturan tertentu, dengan itu meningkatkan ketepatan data dan kestabilan aplikasi. Artikel ini akan memperkenalkan cara menggunakan Vue dan Element-UI untuk melaksanakan logik pengesahan kompleks borang dan menyediakan contoh kod yang berkaitan kepada pembaca.

1 Pengenalan kepada Element-UI
Element-UI ialah perpustakaan komponen desktop yang dibangunkan berdasarkan Vue.js Ia menyediakan satu siri komponen UI yang mudah digunakan dan cantik, seperti jadual, borang, butang, dll. Element-UI mempunyai banyak fungsi pengesahan borang terbina dalam, yang boleh melaksanakan logik pengesahan mudah dengan mudah.

2. Prinsip Asas Pengesahan Borang
Prinsip asas pengesahan borang adalah untuk mendapatkan input nilai oleh pengguna dengan memantau peristiwa perubahan elemen borang, dan kemudian mengesahkannya mengikut satu siri peraturan pratetap. Jika pengesahan lulus, status elemen borang akan ditukar kepada "Pengesahan Lulus", jika tidak mesej ralat akan dipaparkan dan status elemen borang akan ditukar kepada "Pengesahan Gagal".

3 Gunakan Element-UI untuk pengesahan borang yang ringkas
Pertama, kita perlu memperkenalkan komponen Form dan FormItem Element-UI, dan kemudian gunakan komponen ini dalam templat Vue untuk membina borang. Dalam elemen borang yang ditentukan, anda boleh menentukan peraturan pengesahan dengan menetapkan atribut peraturan, seperti yang ditunjukkan di bawah:

<el-form-item label="用户名" prop="username">
  <el-input v-model="form.username"></el-input>
</el-form-item>
<el-form-item label="密码" prop="password">
  <el-input type="password" v-model="form.password"></el-input>
</el-form-item>
<el-form-item>
  <el-button type="primary" @click="validateForm">提交</el-button>
</el-form-item>



Objek borang dalam data menyimpan nilai setiap kotak input dalam bentuk, dan objek peraturan mentakrifkan setiap input Peraturan pengesahan bingkai.

Dalam data Vue, kita boleh mentakrifkan objek bentuk dan peraturan seperti berikut:

data() {
return {

form: {
  username: '',
  password: ''
},
rules: {
  username: [
    { required: true, message: '请输入用户名', trigger: 'blur' },
    { min: 3, max: 10, message: '长度在3到10个字符', trigger: 'blur' }
  ],
  password: [
    { required: true, message: '请输入密码', trigger: 'blur' },
    { min: 6, max: 20, message: '长度在6到20个字符', trigger: 'blur' }
  ]
}

}
}
Dalam objek peraturan, kita boleh menentukan berbilang peraturan pengesahan, seperti yang diperlukan, Sekatan panjang , dsb. Atribut mesej mentakrifkan mesej ralat dan atribut pencetus mentakrifkan peristiwa yang dicetuskan oleh pengesahan.

Dalam kaedah Vue, kami boleh mentakrifkan kaedah validateForm untuk mengesahkan borang Kodnya adalah seperti berikut:

kaedah: {
validateForm() {

this.$refs.myForm.validate((valid) => {
  if (valid) {
    this.$message({
      type: 'success',
      message: '表单校验通过'
    })
  } else {
    this.$message.error('表单校验失败')
    return false
  }
})

}
}
Dalam kaedah validateForm.$, kami memanggil ini. refs. kaedah myForm.validate() untuk mencetuskan pengesahan borang. Keputusan pengesahan dihantar melalui fungsi panggil balik yang sah Jika pengesahan lulus, mesej kejayaan akan dipaparkan, jika tidak mesej kegagalan akan dipaparkan.

4. Laksanakan logik pengesahan yang kompleks
Kadangkala, kita perlu melaksanakan logik pengesahan yang lebih kompleks, seperti membandingkan sama ada nilai dua kotak input adalah sama, mengesahkan alamat e-mel, mengesahkan nombor telefon mudah alih, dsb. Dalam kes ini, kita boleh menggunakan peraturan pengesahan tersuai.

Pertama, dalam data Vue, kami boleh mentakrifkan peraturan pengesahan tersuai, seperti yang ditunjukkan di bawah:

data() {
return {

rules: {
  email: [
    { required: true, message: '请输入邮箱地址', trigger: 'blur' },
    { type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }
  ],
  password: [
    { required: true, message: '请输入密码', trigger: 'blur' },
    { validator: this.validatePassword, trigger: 'blur' }
  ],
  confirmPassword: [
    { required: true, message: '请再次输入密码', trigger: 'blur' },
    { validator: this.validateConfirmPassword, trigger: 'blur' }
  ]
}

}
}
Dalam objek peraturan, kami boleh menentukan peraturan Pengesahan tersuai, di mana pengesah atribut mentakrifkan fungsi pengesahan.

Kemudian, dalam kaedah Vue, kita boleh mentakrifkan fungsi pengesahan tersuai seperti berikut:

kaedah: {
validatePassword(rule, value, callback) {

if (value.length < 6 || value.length > 20) {
  callback(new Error('密码长度在6到20个字符'))
} else {
  callback()
}

},
validateConfirmPassword(rule)

reee value

}
}
Dalam fungsi pengesahan tersuai, kita boleh lulus keputusan pengesahan dengan memanggil panggilan balik fungsi panggil balik. Jika pengesahan lulus, panggil balik() dipanggil, jika tidak panggil balik(Ralat baharu('mesej ralat')) dipanggil.

Akhir sekali, gunakan peraturan pengesahan tersuai dalam templat Vue, seperti yang ditunjukkan di bawah:










dalam penyesuaian Antara peraturan pengesahan , kita boleh menggunakan atribut jenis untuk menentukan peraturan pengesahan yang telah dibina oleh Element-UI. Contohnya, peraturan e-mel boleh dilaksanakan dengan menetapkan atribut jenis kepada 'e-mel'.

Ringkasan:
Artikel ini memperkenalkan cara menggunakan Vue dan Element-UI untuk melaksanakan logik pengesahan borang yang kompleks. Melalui komponen Borang dan FormItem yang disediakan oleh Element-UI, kami boleh membina borang dengan mudah dan menentukan peraturan pengesahan dengan menetapkan atribut peraturan. Untuk logik pengesahan yang kompleks, kami boleh melaksanakannya dengan menyesuaikan peraturan pengesahan dan fungsi pengesahan. Saya harap artikel ini akan membantu semua orang memahami dan menggunakan Vue dan Element-UI untuk pengesahan borang.

Sampel kod:
Berikut ialah kod sampel lengkap:

<script><br>export default {<br> data() {</script>

return {
  form: {
    username: '',
    password: ''
  },
  rules: {
    username: [
      { required: true, message: '请输入用户名', trigger: 'blur' },
      { min: 3, max: 10, message: '长度在3到10个字符', trigger: 'blur' }
    ],
    password: [
      { required: true, message: '请输入密码', trigger: 'blur' },
      { min: 6, max: 20, message: '长度在6到20个字符', trigger: 'blur' }
    ]
  }
}

},
methods: {

validateForm() {
  this.$refs.myForm.validate((valid) => {
    if (valid) {
      this.$message({
        type: 'success',
        message: '表单校验通过'
      })
    } else {
      this.$message.error('表单校验失败')
      return false
    }
  })
}

}
}

以上就是使用Vue和Element-UI实现表单的复杂校验逻辑的一些简单介绍和代码示例。希望本文对于读者能够有所帮助,对于Vue和Element-UI有更深层次的理解和应用。谢谢阅读!

Atas ialah kandungan terperinci Cara menggunakan Vue dan Element-UI untuk melaksanakan logik pengesahan kompleks borang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Pilihan Rangka Kerja: Apa yang mendorong keputusan Netflix?Pilihan Rangka Kerja: Apa yang mendorong keputusan Netflix?Apr 13, 2025 am 12:05 AM

Netflix terutamanya menganggap prestasi, skalabiliti, kecekapan pembangunan, ekosistem, hutang teknikal dan kos penyelenggaraan dalam pemilihan rangka kerja. 1. Prestasi dan Skalabiliti: Java dan Springboot dipilih untuk memproses data besar -besaran dan permintaan serentak yang tinggi. 2. Kecekapan Pembangunan dan Ekosistem: Gunakan React untuk meningkatkan kecekapan pembangunan front-end dan menggunakan ekosistemnya yang kaya. 3. Hutang Teknikal dan Penyelenggaraan Kos: Pilih Node.js untuk membina mikroservis untuk mengurangkan kos penyelenggaraan dan hutang teknikal.

React, Vue, dan Masa Depan Frontend NetflixReact, Vue, dan Masa Depan Frontend NetflixApr 12, 2025 am 12:12 AM

Netflix terutamanya menggunakan React sebagai rangka kerja front-end, ditambah dengan VUE untuk fungsi tertentu. 1) Komponen React dan DOM maya meningkatkan prestasi dan kecekapan pembangunan aplikasi Netflix. 2) VUE digunakan dalam alat dalaman dan projek kecil Netflix, dan fleksibiliti dan kemudahan penggunaannya adalah kunci.

Vue.js di frontend: aplikasi dan contoh dunia nyataVue.js di frontend: aplikasi dan contoh dunia nyataApr 11, 2025 am 12:12 AM

Vue.js adalah rangka kerja JavaScript yang progresif yang sesuai untuk membina antara muka pengguna yang kompleks. 1) Konsep terasnya termasuk data responsif, komponen dan DOM maya. 2) Dalam aplikasi praktikal, ia boleh ditunjukkan dengan membina aplikasi todo dan mengintegrasikan vuerouter. 3) Apabila debugging, disyorkan untuk menggunakan Vuedevtools dan Console.log. 4) Pengoptimuman prestasi boleh dicapai melalui V-IF/V-Show, senarai pengoptimuman rendering, pemuatan asynchronous komponen, dll.

Vue.js dan bertindak balas: Memahami perbezaan utamaVue.js dan bertindak balas: Memahami perbezaan utamaApr 10, 2025 am 09:26 AM

Vue.js sesuai untuk projek kecil dan sederhana, sementara React lebih sesuai untuk aplikasi besar dan kompleks. 1. Sistem responsif vue.js secara automatik mengemas kini DOM melalui pengesanan ketergantungan, menjadikannya mudah untuk menguruskan perubahan data. 2. Leact mengamalkan aliran data sehala, dan data mengalir dari komponen induk ke komponen kanak-kanak, menyediakan aliran data yang jelas dan struktur yang mudah dibuang.

Vue.js vs React: Pertimbangan khusus projekVue.js vs React: Pertimbangan khusus projekApr 09, 2025 am 12:01 AM

Vue.js sesuai untuk projek kecil dan sederhana dan lelaran yang cepat, sementara React sesuai untuk aplikasi besar dan kompleks. 1) Vue.js mudah digunakan dan sesuai untuk situasi di mana pasukan tidak mencukupi atau skala projek kecil. 2) React mempunyai ekosistem yang lebih kaya dan sesuai untuk projek dengan prestasi tinggi dan keperluan fungsional yang kompleks.

Cara melompat tag ke vueCara melompat tag ke vueApr 08, 2025 am 09:24 AM

Kaedah untuk melaksanakan lompatan tag dalam Vue termasuk: menggunakan tag dalam templat HTML untuk menentukan atribut HREF. Gunakan komponen router-link routing VUE. Gunakan ini. $ Router.push () kaedah dalam JavaScript. Parameter boleh dilalui melalui parameter pertanyaan dan laluan dikonfigurasikan dalam pilihan penghala untuk lompatan dinamik.

Cara melaksanakan lompat komponen untuk vueCara melaksanakan lompat komponen untuk vueApr 08, 2025 am 09:21 AM

Terdapat kaedah berikut untuk melaksanakan lompat komponen di Vue: Gunakan Router-Link dan & lt; Router-View & GT; Komponen untuk melaksanakan lompat hiperpautan, dan tentukan: untuk atribut sebagai laluan sasaran. Gunakan & lt; router-view & gt; Komponen secara langsung untuk memaparkan komponen yang dijalankan yang sedang dialihkan. Gunakan kaedah router.push () dan router.replace () untuk navigasi programatik. Bekas menjimatkan sejarah dan yang kedua menggantikan laluan semasa tanpa meninggalkan rekod.

Cara melompat ke Div VueCara melompat ke Div VueApr 08, 2025 am 09:18 AM

Terdapat dua cara untuk melompat elemen div di Vue: Gunakan Vue Router dan tambahkan komponen router-link. Tambah pendengar acara @Click dan panggil ini. $ Router.push () kaedah untuk melompat.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

MinGW - GNU Minimalis untuk Windows

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

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa