Je construis une application en utilisant le framework Quasar. Pour la validation du formulaire, j'utilise vuelidate pour la validation.
Version Quasar :
» Pack Quasar..... v2.0.3
» Pack @quasar/app... v3.0.3
Vérification :
"vuelidate": ^0.7.6"
Le code "similaire" fonctionne essentiellement dans une autre application Quasar 1.X, mais échoue dans Quasar 2.x :
Configuration de démarrage :
import Vuelidate from 'vuelidate'; export default ({ app }) => { app.use(Vuelidate); };
Composants :
<template> <div> <q-input filled label="Tweets" type="text" v-model="$v.tweets.$model" :error="$v.tweets.$error" @blur="$v.tweets.$touch" /> </div> </template> <script> import { defineComponent } from "vue"; import { required, numeric } from "vuelidate/lib/validators"; export default defineComponent({ name: "StatsForm", data() { return { tweets: null, }; }, validations: { tweets: { required, numeric }, }, }); </script>
Code d'utilisation du composant :
<template> <q-page class="flex justify-center q-ma-md"> <div class="column"> <h1>Twitter Profile Performance Report</h1> <stats-form /> </div> </q-page> </template> <script> import { defineComponent } from "vue"; import StatsForm from "../components/StatsForm.vue"; export default defineComponent({ name: "PerformanceReport", components: { "stats-form": StatsForm, }, }); </script> <style> h1 { font-size: 2.5em; font-weight: 400; line-height: 1em; } </style>
J'obtiens l'erreur suivante dans mon navigateur :
vue-router.esm-bundler.js?f6c4:3248 ReferenceError: process is not defined at eval (withParams.js?8b99:7) at Object../node_modules/vuelidate/lib/withParams.js (vendor.f2dee45ef25904390a82.hot-update.js:271) at __webpack_require__ (app.js:195) at fn (app.js:460) at eval (common.js?bca9:14) at Object../node_modules/vuelidate/lib/validators/common.js (vendor.f2dee45ef25904390a82.hot-update.js:62) at __webpack_require__ (app.js:195) at fn (app.js:460) at eval (alpha.js?d360:8) at Object../node_modules/vuelidate/lib/validators/alpha.js (vendor.f2dee45ef25904390a82.hot-update.js:18)
Vuelidate v0.7.6 est la version sortie le 23 octobre 2020 et n'est compatible qu'avec Vue 2. Vous utilisez Vue 3, ce qui signifie que vous devez utiliser Vuelidate v2