Vue Exemple d'une barre de navigation réactive
Jul 17, 2025 am 03:44 AMComment créer une barre de navigation réactive dans Vue 3? Utilisez l'API de composition de Vue 3 pour construire la structure de base et implémenter la disposition réactive via CSS. 1. Créez un composant VUE qui comprend les boutons du logo, du lien et du commutateur mobile; 2. Utiliser les fonctions REF et ToggleMenu pour contr?ler l'état d'affichage des menus mobiles; 3. Utilisez la disposition CSS Flex pour réaliser la navigation horizontale de bureau; 4. Utiliser des requêtes multimédias et une animation max-hauteur pour réaliser des menus mobiles glissants; 5. Ajoutez un écouteur de taille de fenêtre pour fermer automatiquement le menu mobile.
La création d'une barre de navigation réactive dans Vue est une tache courante lors de la création d'applications Web modernes. L'objectif est de rendre la navigation accessible et visuellement cohérente sur différentes tailles d'écran - mobile, tablette et bureau. Vous trouverez ci-dessous un exemple pratique de la fa?on de mettre en ?uvre une barre de navigation réactive en utilisant Vue 3 (avec l'API de composition) et CSS de base.

Structure de base avec des composants Vue
Un Navbar réactif comprend généralement un logo, un ensemble de liens et un bouton à bascule pour les écrans mobiles. Voici une structure de composants Vue simple:
<mpelate> <nav class = "navbar"> <div class = "logo"> mylogo </div> <Button class = "toggle-btn" @ click = "toggleMenu"> {{IsmobileMenuopen? '?': '?'}} </ bouton> <ul class = "nav links": class = "{open: ismobilemenuopen}"> <li> <a href = "#"> Accueil </a> </li> <li> <a href = "#"> à propos de </a> </li> <li> <a href = "#"> Services </a> </li> <li> <a href = "#"> Contact </a> </li> </ul> </ nav> </ template> <Configuration du script> import {ref} de 'Vue' const IsmobileMenuopen = ref (false) const togglemenu = () => { IsmobileMenuOpen.Value =! IsmobileMenuopen.Value } </cript>
Cela met en place une disposition de base avec un bouton à bascule qui appara?t sur des écrans plus petits. La fonction toggleMenu
contr?le la visibilité du menu mobile.

Style réactif avec CSS
Maintenant, rendons cette mise en page réactive. Nous allons masquer le menu sur mobile et l'afficher lorsque la bascule est cliquée.
.Navbar { Affichage: flex; justifier-contenu: espace-intermédiaire; Align-Items: Centre; rembourrage: 1rem 5%; Color d'arrière-plan: #FFF; Border-Bottom: 1px solide #ddd; } .logo { taille de police: 1.5rem; Police-poids: Bold; } .nav-links { Affichage: flex; écart: 1.5rem; Style de liste: aucun; } .nav-links a { Décoration du texte: aucune; Couleur: # 333; } .toggle-btn { Affichage: aucun; taille de police: 1.5rem; Contexte: aucun; Border: aucun; curseur: pointeur; } / * Styles mobiles * / @media (max-large: 768px) { .nav-links { Position: absolue; en haut: 100%; à gauche: 0; à droite: 0; Contexte: #FFFF; Flex-Direction: colonne; Align-Items: Centre; max-height: 0; débordement: caché; Transition: facilité de max-height 0.3S; } .nav-links.open { max-height: 300px; } .toggle-btn { Affichage: bloc; } }
Ce CSS:

- Affiche les liens horizontalement sur le bureau
- Les cache sur mobile et affiche un bouton à bascule
- Glisse le menu en douceur en utilisant une animation
max-height
Gestion des événements de redimension d'écran
Si vous souhaitez fermer automatiquement le menu mobile lorsque l'écran est redimensionné à la largeur du bureau, vous pouvez ajouter un observateur pour les modifications de la taille de la fenêtre:
import {onmounted, onunmounted} à partir de 'vue' const HandlereSize = () => { if (window.innerwidth> 768 && ismobilemenuopen.value) { IsmobileMenuOpen.Value = False } } onMounted (() => { window.addeventListener (?redimensi?, gestionnaire) }) onunmounted (() => { window.RemoveEventListener (?redimensionner?, Handleresize) })
Cela garantit que le menu mobile ne reste pas ouvert lorsque l'utilisateur redimensionne le navigateur à une largeur plus grande.
Notes finales
- Vous pouvez améliorer cela avec des animations, des transitions ou même utiliser une bibliothèque d'interface utilisateur comme Vuetify ou Bootstrap Vue pour les composants prédéfinis.
- Envisagez l'accessibilité en ajoutant des attributs
aria
au bouton basculé et aux liens NAV. - Si vous utilisez le routeur Vue, remplacez
<a href="#"></a>
par<router-link></router-link>
pour la navigation spa.
Fondamentalement, c'est tout. Avec seulement quelques lignes de VUE et CSS, vous avez une barre de navigation réactive entièrement fonctionnelle qui s'adapte à différentes tailles d'écran.
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

Undress AI Tool
Images de déshabillage gratuites

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.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

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)

Pour développer une application Web Python complète, suivez ces étapes: 1. Choisissez le cadre approprié, tel que Django ou Flask. 2. Intégrez les bases de données et utilisez des orms tels que Sqlalchemy. 3. Concevez le frontal et utilisez Vue ou React. 4. Effectuez le test, utilisez Pytest ou Unittest. 5. Déployer les applications, utiliser Docker et des plates-formes telles que Heroku ou AWS. Grace à ces étapes, des applications Web puissantes et efficaces peuvent être construites.

Le c?ur du système de routage frontal est de mapper les URL aux composants. VUerouter et Reactrouter réalisent la commutation de page sans rafra?chissement en écoutant les modifications de l'URL et en chargeant des composants correspondants. Les méthodes de configuration incluent: 1. Routing imbriqué, permettant aux composants enfants imbriqués dans le composant parent; 2. Routing dynamique, chargeant différents composants en fonction des paramètres URL; 3. Route Guard, effectuer une logique telle que les vérifications d'autorisation avant et après la commutation de l'itinéraire.

ReactivitytransforminVue3aimedtosimplifyhandlingreactivedatabyautomaticallytrackingandmanagingreactivitywithoutrequiringmanualref()or.valueusage.Itsoughttoreduceboilerplateandimprovecodereadabilitybytreatingvariableslikeletandconstasautomaticallyreac

Les différences de base entre Vue.js et React dans le développement des composants sont: 1) Vue.js utilise la syntaxe du modèle et l'option API, tandis que React utilise JSX et les composants fonctionnels; 2) Vue.js utilise des systèmes réactifs, React utilise des données immuables et un DOM virtuel; 3) Vue.js fournit plusieurs crochets de cycle de vie, tandis que React utilise plus de crochets d'effet d'utilisation.

Internationalisation et olocalisation dans la variation des acquis

Lorsque Vue.js gère les mises à jour du tableau, la vue n'est pas mise à jour car object.defineproperty ne peut pas écouter directement les modifications du tableau. Les solutions incluent: 1. Utilisez la méthode Vue.Set pour modifier l'index du tableau; 2. Réaffectez l'intégralité du tableau; 3. Utilisez la méthode de mutation réécrite de Vue pour faire fonctionner le tableau.

En utilisant: keyattributewithv-forrinvuesessentialforperformanceAndCorrectBehavior.Ort, itHelpsvueTrackEachElementation efficace par ce que

Les méthodes pour optimiser les performances des grandes listes et des composants complexes dans Vue incluent: 1. Utilisez la directive V-ONCE pour traiter le contenu statique pour réduire les mises à jour inutiles; 2. Implémentez le défilement virtuel et ne rendez que le contenu de la zone visuelle, comme l'utilisation de la bibliothèque Vue-Virtual-Croller; 3. Composants de cache via Keep-Alive ou V-ONCE pour éviter les supports en double; 4. Utilisez des propriétés et des auditeurs calculés pour optimiser la logique réactive pour réduire la plage de réinstallation; 5. Suivez les meilleures pratiques, comme l'utilisation de clés uniques en V-FOR, en évitant les fonctions en ligne dans les modèles et en utilisant des outils d'analyse des performances pour localiser les goulots d'étranglement. Ces stratégies peuvent améliorer efficacement la ma?trise de l'application.
