


Comment encourager les inscriptions avec un contenu modal « Rejoindre le club » et qui disparaît
Imaginez parcourir un site Web, apercevoir un contenu intrigant juste hors de portée, avec un simple modal vous incitant à « rejoindre le club » pour un accès illimité. Ce design subtil mais efficace pique la curiosité tout en encourageant l’action. Dans ce didacticiel, nous allons créer une telle expérience en utilisant le composant Dialog de PrimeVue dans Nuxt 3, complété par un effet de fondu de contenu gracieux qui attire les utilisateurs.
Remarque : cela pourrait tout aussi bien être conçu dans Vanilla JS, ou sans utiliser PrimeVue.
Plongeons-nous dans la création de cette expérience modale captivante tout en nous concentrant sur son efficacité psychologique, en permettant aux utilisateurs de prévisualiser un extrait de contenu pour rendre l'adhésion au club irrésistible.
Partie 1 : Le but et la configuration
L'objectif est simple : lorsqu'un utilisateur n'est pas connecté, afficher un modal "Rejoindre le club" tout en estompant le contenu d'arrière-plan pour faire allusion à ce qui se trouve en dessous. Cette technique exploite la curiosité, un puissant facteur de motivation, pour encourager les inscriptions.
Initialisation du composant
Créez un fichier join-the-club.vue et configurez le script et le modèle de base :
<script setup> const showLoginDialog = ref(true); // Controls the modal visibility const email = ref(''); // Holds the user's email input // Dynamic body class to manage overflow const body_class = computed(() => ({ overflow: showLoginDialog.value, })); // Join the club function (placeholder for now) const joinClub = async () => { console.log('User email:', email.value); }; // Placeholder function for sign-in click const onSigninClicked = (event) => { console.log('Sign-in clicked'); }; </script>
Ici, on définit :
- showLoginDialog : Une variable réactive qui détermine si le modal est visible.
- email : une variable réactive pour capturer la saisie de l'e-mail de l'utilisateur.
- joinClub et onSigninClicked : fonctions d'espace réservé pour la gestion des actions.
Partie 2 : Création du modal
En utilisant le composant Dialog de PrimeVue, nous créerons un modal élégant, non intrusif et ciblé. Le modal fournit un appel clair à l'action et simplifie le processus de prise de décision.
Ajout du modèle
<template> <Body :class="body_class" /> <!-- Background overlay with fade effect --> <div v-if="showLoginDialog"> <ul> <li> <strong>Content Preview</strong> : The gradient overlay provides a teaser of what’s underneath, enticing the user to explore.</li> <li> <strong>PrimeVue Dialog</strong> : This non-dismissable modal focuses the user’s attention while still being friendly.</li> </ul> <hr> <p><strong>2220+ FREE</strong> <u><b><strong>RESOURCES</strong></b></u> <strong>FOR DEVELOPERS!! ❤️</strong> ?? <strong><sub><strong>(updated daily)</strong></sub></strong></p> <blockquote> <p>1400+ Free HTML Templates<br><br> 351+ Free News Articles<br><br> 67+ Free AI Prompts<br><br> 315+ Free Code Libraries<br><br> 52+ Free Code Snippets & Boilerplates for Node, Nuxt, Vue, and more!<br><br> 25+ Free Open Source Icon Libraries</p> </blockquote> <p>Visit dailysandbox.pro for free access to a treasure trove of resources!</p> <hr> <h3> Part 3: Styling for Engagement </h3> <p>Great functionality deserves great styling. Let’s add CSS to enhance the user experience.</p> <h4> Styling the Overlay and Modal </h4> <pre class="brush:php;toolbar:false"><style lang="less" scoped> .content-auth-overlay { position: fixed; top: 55px; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, rgba(255, 255, 255, 10%), rgba(255, 255, 255, 100%)); z-index: 1000; pointer-events: all; opacity: 1; } .join-club { display: flex; align-items: center; margin-top: 30px; margin-bottom: 20px; width: 100%; @media @mobile { flex-flow: column; align-items: normal; gap: 15px; } } .email-input { font-size: 1.2rem; } .email-control { font-size: 1rem; white-space: nowrap; overflow: unset; padding: 11px; margin-left: 10px; } </style>
- Effet de superposition : Le dégradé linéaire crée un effet de fondu, laissant juste assez de visibilité pour intriguer l'utilisateur.
- Conception réactive : les ajustements axés sur le mobile garantissent que la mise en page fonctionne sur tous les appareils.
- Styling Inputs : Des conceptions de saisie et de boutons épurées et modernes améliorent la convivialité.
Partie 4 : Ajout de fonctionnalités
La fonction joinClub est le cœur de ce modal. Il gérera les soumissions par e-mail des utilisateurs et déclenchera la logique backend pour les inscriptions.
Ajout de la fonctionnalité de jointure
<script setup> const showLoginDialog = ref(true); // Controls the modal visibility const email = ref(''); // Holds the user's email input // Dynamic body class to manage overflow const body_class = computed(() => ({ overflow: showLoginDialog.value, })); // Join the club function (placeholder for now) const joinClub = async () => { console.log('User email:', email.value); }; // Placeholder function for sign-in click const onSigninClicked = (event) => { console.log('Sign-in clicked'); }; </script>
- Validation : Assurez-vous que l'e-mail est fourni avant de continuer.
- Appel backend simulé : remplacez le fichier console.log par un véritable appel API pour gérer les inscriptions.
- Fermeture du modal : En cas de succès, masquez le modal pour permettre à l'utilisateur d'explorer le site.
Partie 5 : Lier le tout ensemble
Maintenant, intégrez le composant join-the-club.vue dans votre application principale. Par exemple, vous pouvez l'importer et l'utiliser de manière conditionnelle en fonction de l'état d'authentification de l'utilisateur :
<template> <Body :class="body_class" /> <!-- Background overlay with fade effect --> <div v-if="showLoginDialog"> <ul> <li> <strong>Content Preview</strong> : The gradient overlay provides a teaser of what’s underneath, enticing the user to explore.</li> <li> <strong>PrimeVue Dialog</strong> : This non-dismissable modal focuses the user’s attention while still being friendly.</li> </ul> <hr> <p><strong>2220+ FREE</strong> <u><b><strong>RESOURCES</strong></b></u> <strong>FOR DEVELOPERS!! ❤️</strong> ?? <strong><sub><strong>(updated daily)</strong></sub></strong></p> <blockquote> <p>1400+ Free HTML Templates<br><br> 351+ Free News Articles<br><br> 67+ Free AI Prompts<br><br> 315+ Free Code Libraries<br><br> 52+ Free Code Snippets & Boilerplates for Node, Nuxt, Vue, and more!<br><br> 25+ Free Open Source Icon Libraries</p> </blockquote> <p>Visit dailysandbox.pro for free access to a treasure trove of resources!</p> <hr> <h3> Part 3: Styling for Engagement </h3> <p>Great functionality deserves great styling. Let’s add CSS to enhance the user experience.</p> <h4> Styling the Overlay and Modal </h4> <pre class="brush:php;toolbar:false"><style lang="less" scoped> .content-auth-overlay { position: fixed; top: 55px; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, rgba(255, 255, 255, 10%), rgba(255, 255, 255, 100%)); z-index: 1000; pointer-events: all; opacity: 1; } .join-club { display: flex; align-items: center; margin-top: 30px; margin-bottom: 20px; width: 100%; @media @mobile { flex-flow: column; align-items: normal; gap: 15px; } } .email-input { font-size: 1.2rem; } .email-control { font-size: 1rem; white-space: nowrap; overflow: unset; padding: 11px; margin-left: 10px; } </style>
La psychologie de l'effet de fondu
Cette conception exploite un puissant principe de curiosité. En permettant aux utilisateurs d'apercevoir une partie du contenu sous le modal, vous exploitez leur désir de découvrir ce qui leur manque. Couplée à la proposition de valeur claire dans le texte modal, cette approche encourage les utilisateurs à prendre des décisions rapides, augmentant ainsi les conversions.
Conclusion : plus qu'un modal
Avec cette configuration, vous avez créé plus qu'un simple modal « Rejoindre le club ». Vous avez créé une expérience convaincante et réfléchie qui combine l’attrait visuel avec la psychologie des utilisateurs pour stimuler l’engagement. La boîte de dialogue PrimeVue et la superposition de dégradé fonctionnent en harmonie pour captiver votre public tout en offrant une interface intuitive et réactive.
Restez à l'écoute pour en savoir plus sur cette série alors que nous continuons à créer des fonctionnalités attrayantes qui ravissent les utilisateurs et élèvent vos applications Web !
Pour plus de conseils sur le développement Web, consultez DailySandbox et inscrivez-vous à notre newsletter gratuite pour garder une longueur d'avance !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Si vous avez récemment commencé à travailler avec GraphQL ou examiné ses avantages et ses inconvénients, vous avez sans aucun doute entendu des choses comme "GraphQL ne prend pas en charge la mise en cache" ou

Avec la récente montée du prix du bitcoin sur 20k $ USD, et pour lui, récemment en train de briser 30k, je pensais que cela valait la peine de reprendre une profonde plongeon dans la création d'Ethereum

Quelle que soit le stade dans lequel vous vous trouvez en tant que développeur, les tâches que nous effectuons - qu'elles soient grandes ou petites - ont un impact énorme dans notre croissance personnelle et professionnelle.

Il est sorti! Félicitations à l'équipe Vue pour l'avoir fait, je sais que ce fut un effort massif et une longue période à venir. Tous les nouveaux documents aussi.

J'ai eu quelqu'un qui écrivait avec cette question très légitime. Lea vient de bloguer sur la façon dont vous pouvez obtenir les propriétés CSS valides elles-mêmes du navigateur. C'est comme ça.

Je dirais que "Site Web" correspond mieux que "Application mobile" mais j'aime ce cadrage de Max Lynch:

L'autre jour, j'ai repéré ce morceau particulièrement charmant sur le site Web de Corey Ginnivan où une collection de cartes se cassent les uns sur les autres pendant que vous faites défiler.

Il existe un certain nombre de ces applications de bureau où l'objectif montre votre site à différentes dimensions en même temps. Vous pouvez donc, par exemple, écrire
