Heim Web-Frontend View.js So verwenden Sie die Formularvalidierungsfunktion in der Vue-Dokumentation

So verwenden Sie die Formularvalidierungsfunktion in der Vue-Dokumentation

Jun 20, 2023 pm 11:25 PM
vue 表单验证 函数使用

Vue ist ein progressives JavaScript-Framework zum Erstellen von Benutzeroberflächen. Der Fokus von Vue liegt auf seiner Einfachheit und Flexibilität, die in nahezu jedem Projekt eingesetzt werden kann. Als Frontend-Entwickler müssen wir häufig Funktionen zur Formularvalidierung verwenden. Die Vue-Dokumentation bietet einige Formularvalidierungsfunktionen, die sehr praktisch sind und Entwicklern dabei helfen können, die Formularvalidierung effizienter durchzuführen. In diesem Artikel wird die Verwendung der Formularvalidierungsfunktion im Vue-Dokument vorgestellt.

Zuerst müssen wir v-model in der Vue-Vorlage verwenden, um den Wert des Formularfelds zu binden. Der folgende Code verwendet beispielsweise das V-Modell, um den Wert eines Eingabefelds zu binden: v-model绑定表单字段的值。例如,以下代码使用v-model绑定一个输入框的值:

<template>
  <div>
    <input type="text" v-model="username">
  </div>
</template>
Nach dem Login kopieren

在Vue文档中,表单验证函数包含在Vue的实例方法$validator中。要使用表单验证函数,我们需要先通过Vue.use(VeeValidate)引入VeeValidate插件,这是Vue官方推荐的表单验证插件。

在引入VeeValidate之后,我们可以在Vue实例的生命周期中调用$validator方法,例如在created()方法中,以便在Vue实例被创建时完成初始化。

<script>
import Vue from 'vue';
import VeeValidate from 'vee-validate';  // 引入VeeValidate插件
Vue.use(VeeValidate);  // 使用VeeValidate
export default {
  name: 'formDemo',
  data() {
    return {
      username: '',
    };
  },
  created() {
    this.$validator.localize('zh_CN', {  // 将验证器语言设置为中文
      messages: {
        required: (field) => `${field}不能为空`,
      },
    });
  }
}
Nach dem Login kopieren

上述代码中,在created()方法中,我们使用this.$validator.localize()方法将验证器的语言设置为中文,并定义了一条自定义错误消息。这里的required是一个默认的VeeValidate规则,它表示此项字段必填。在本例中,自定义错误消息是“用户名不能为空”。

现在,我们定义了一个自定义的VeeValidate规则checkUsernameAvailable,在本例中,它是用来检查用户名是否可用的。在该规则中,我们可以访问输入框绑定的值,然后我们可以使用Axios请求POST方法将该值发送到服务器。如果返回的结果是数据状态码为200,则表示该用户名可用,否则表示用户名不可用。

<script>
import Vue from 'vue';
import VeeValidate from 'vee-validate';
import axios from 'axios';
Vue.use(VeeValidate);
export default {
  name: 'formDemo',
  data() {
    return {
      username: '',
    };
  },
  created() {
    this.$validator.localize('zh_CN', {
      messages: {
        required: (field) => `${field}不能为空`,
        checkUsernameAvailable: (field) => `${field}已经被注册了`,
      },
    });

    this.$validator.extend('checkUsernameAvailable', {
      getMessage: (field, params, data) => data.message,
      validate: async (value) => {
        const { data } = await axios.post('/api/checkusername', {
          username: value,
        });
        return {
          valid: data.status === 200,
          data: data,
        };
      },
    });
  }
}
</script>
Nach dem Login kopieren

在上述代码中,我们定义了一个带有自定义函数的验证规则checkUsernameAvailable,该规则使用异步/await来等待Axios的POST方法响应。如果响应中的状态码为200,则返回true,否则返回false

最后,我们需要将这个验证规则绑定到HTML表单中。在表单元素中添加data-vv-validate属性,这告诉Vue Validator开始验证该表单。然后,我们在需要验证的表单元素中添加自定义规则v-validate="{ rules: { checkUsernameAvailable: true } }"。这告诉Vue Validator使用我们自定义的验证规则。

<template>
  <div>
    <form @submit.prevent="">
      <div>
        <input type="text" name="username" v-model="username" data-vv-validate="''" v-validate="{ rules: { checkUsernameAvailable: true } }" placeholder="请输入用户名">
        <div v-show="errors.has('username')" class="invalid-feedback">{{ errors.first('username') }}</div>
      </div>
      <button @click="submitForm">提交</button>
    </form>
  </div>
</template>
Nach dem Login kopieren

在上述代码中,我们在输入框中添加了一个错误消息v-show="errors.has('username')"rrreee

In der Vue-Dokumentation ist die Formularvalidierungsfunktion in der Vue-Instanzmethode $validator enthalten. Um die Formularvalidierungsfunktion verwenden zu können, müssen wir zunächst das VeeValidate-Plug-in über Vue.use(VeeValidate) einführen, das offiziell empfohlene Formularvalidierungs-Plug-in für Vue.

Nach der Einführung von VeeValidate können wir die Methode $validator im Lebenszyklus der Vue-Instanz aufrufen, beispielsweise in der Methode created(), sodass beim Vue Instanz wird erstellt. Vollständige Initialisierung.

rrreee

Im obigen Code verwenden wir in der Methode created() die Methode this.$validator.localize(), um die Sprache des Validators auf Chinesisch festzulegen und definieren Sie eine benutzerdefinierte Fehlermeldung erstellen. Der required hier ist eine standardmäßige VeeValidate-Regel, die angibt, dass dieses Feld erforderlich ist. In diesem Beispiel lautet die benutzerdefinierte Fehlermeldung „Benutzername darf nicht leer sein.“ 🎜🎜Jetzt definieren wir eine benutzerdefinierte VeeValidate-Regel checkUsernameAvailable. In diesem Fall wird damit überprüft, ob der Benutzername verfügbar ist. In dieser Regel haben wir Zugriff auf den an das Eingabefeld gebundenen Wert und können dann die Axios-Request-POST-Methode verwenden, um diesen Wert an den Server zu senden. Wenn das zurückgegebene Ergebnis einen Datenstatuscode von 200 hat, bedeutet dies, dass der Benutzername verfügbar ist, andernfalls bedeutet dies, dass der Benutzername nicht verfügbar ist. 🎜rrreee🎜Im obigen Code definieren wir eine Validierungsregel checkUsernameAvailable mit einer benutzerdefinierten Funktion, die asynchronous/await verwendet, um auf die Antwort der POST-Methode von Axios zu warten. Wenn der Statuscode in der Antwort 200 ist, wird true zurückgegeben, andernfalls wird false zurückgegeben. 🎜🎜Zuletzt müssen wir diese Validierungsregel an das HTML-Formular binden. Fügen Sie dem Formularelement das Attribut data-vv-validate hinzu. Dadurch wird Vue Validator angewiesen, mit der Validierung des Formulars zu beginnen. Anschließend fügen wir benutzerdefinierte Regeln v-validate="{ Rules: { checkUsernameAvailable: true } }" in den Formularelementen hinzu, die eine Validierung erfordern. Dadurch wird Vue Validator angewiesen, unsere benutzerdefinierten Validierungsregeln zu verwenden. 🎜rrreee🎜Im obigen Code haben wir eine Fehlermeldung v-show="errors.has('username')" zum Eingabefeld hinzugefügt. Wenn die Fehlermeldung nicht leer ist, wird die Meldung angezeigt gezeigt werden. 🎜🎜Jetzt haben wir die Erstellung und Bindung benutzerdefinierter Validierungsregeln abgeschlossen. Wenn der Wert im Eingabefeld für den Benutzernamen auf der Serverseite verfügbar ist, übermittelt das Formular die Daten. Andernfalls zeigt Vue Validator eine benutzerdefinierte Fehlermeldung an. 🎜🎜Insgesamt ist Vue Validator ein sehr leistungsstarkes und benutzerfreundliches Formularvalidierungs-Plugin. Vue bietet Front-End-Entwicklern eine hervorragende Plattform für die schnelle Entwicklung von Formularvalidierungen. Die Verwendung von Vue Validator ist leicht zu verstehen und kann die Entwicklungseffizienz erheblich verbessern. 🎜

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Formularvalidierungsfunktion in der Vue-Dokumentation. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie Bootstrap in Vue So verwenden Sie Bootstrap in Vue Apr 07, 2025 pm 11:33 PM

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

So fügen Sie Funktionen zu Schaltflächen für Vue hinzu So fügen Sie Funktionen zu Schaltflächen für Vue hinzu Apr 08, 2025 am 08:51 AM

Sie können der VUE -Taste eine Funktion hinzufügen, indem Sie die Taste in der HTML -Vorlage an eine Methode binden. Definieren Sie die Methode und schreiben Sie die Funktionslogik in der VUE -Instanz.

So verweisen Sie auf die JS -Datei mit Vue.js So verweisen Sie auf die JS -Datei mit Vue.js Apr 07, 2025 pm 11:27 PM

Es gibt drei Möglichkeiten, sich auf JS -Dateien in Vue.js zu beziehen: Geben Sie den Pfad direkt mit dem & lt; Skript & gt an. Etikett;; Dynamischer Import mit dem montierten () Lebenszyklushaken; und importieren über die Vuex State Management Library.

So verwenden Sie Watch in Vue So verwenden Sie Watch in Vue Apr 07, 2025 pm 11:36 PM

Mit der Watch -Option in Vue.js können Entwickler auf Änderungen in bestimmten Daten anhören. Wenn sich die Daten ändert, löst sich eine Rückruffunktion aus, um Aktualisierungsansichten oder andere Aufgaben auszuführen. Zu den Konfigurationsoptionen gehören unmittelbar, die festlegen, ob ein Rückruf sofort ausgeführt werden soll, und Deep, das feststellt, ob Änderungen an Objekten oder Arrays rekursiv anhören sollen.

Was bedeutet VUE Multi-Page-Entwicklung? Was bedeutet VUE Multi-Page-Entwicklung? Apr 07, 2025 pm 11:57 PM

VUE Multi-Page-Entwicklung ist eine Möglichkeit, Anwendungen mithilfe des Vue.js-Frameworks zu erstellen, in dem die Anwendung in separate Seiten unterteilt ist: Code-Wartung: Die Aufteilung der Anwendung in mehrere Seiten kann das Verwalten und Wartungsbereich erleichtern. Modularität: Jede Seite kann als separates Modul für eine einfache Wiederverwendung und den Austausch verwendet werden. Einfaches Routing: Die Navigation zwischen Seiten kann durch einfache Routing -Konfiguration verwaltet werden. SEO -Optimierung: Jede Seite hat eine eigene URL, die SEO hilft.

So kehren Sie von Vue zur vorherigen Seite zurück So kehren Sie von Vue zur vorherigen Seite zurück Apr 07, 2025 pm 11:30 PM

VUE.JS hat vier Methoden, um zur vorherigen Seite zurückzukehren: $ router.go (-1) $ router.back () verwendet & lt; Router-Link to = & quot;/& quot; Komponentenfenster.history.back () und die Methodenauswahl hängt von der Szene ab.

So verwenden Sie Vue Traversal So verwenden Sie Vue Traversal Apr 07, 2025 pm 11:48 PM

Es gibt drei gängige Methoden für Vue.js, um Arrays und Objekte zu durchqueren: Die V-für-Anweisung wird verwendet, um jedes Element zu durchqueren und Vorlagen zu rendern; Die V-Bind-Anweisung kann mit V-für dynamisch Attributwerte für jedes Element verwendet werden. und die .MAP -Methode kann Array -Elemente in Neuarrays umwandeln.

Wie man einen Tag zum Vue springt Wie man einen Tag zum Vue springt Apr 08, 2025 am 09:24 AM

Zu den Methoden zum Implementieren des Sprung eines Tags in VUE gehören: Verwenden des A -Tags in der HTML -Vorlage, um das HREF -Attribut anzugeben. Verwenden Sie die Router-Link-Komponente des Vue-Routings. Verwenden Sie dies. $ Router.push () Methode in JavaScript. Parameter können durch den Abfrageparameter weitergeleitet werden, und Routen sind in den Routeroptionen für dynamische Sprünge konfiguriert.

See all articles