フロントエンド開発では、ナビゲーションは不可欠な要素であり、Web サイトやアプリケーションへの主要な入り口であるナビゲーションのデザインとインタラクションは、ユーザー エクスペリエンスに影響を与える重要な要素の 1 つです。この記事では、Vue を使用してクリック ナビゲーションの強調表示効果を実現し、ユーザーのインタラクティブ エクスペリエンスを向上させる方法を紹介します。
1. プロジェクト環境の準備
開始する前に、Vue を使用したプロジェクトを準備する必要があります。 Vue CLI などのツールを使用して、プロジェクトをすばやく作成できます。プロジェクトに Vue および Vue Router ライブラリをインストールする必要があります。
//安装 Vue npm install vue //安装 Vue Router npm install vue-router
2. クリック ナビゲーションのハイライトの実装
まず、ナビゲーションするためのルーティングを設定する必要があります。ここでは、ホームページ、ニュース ページ、ブログ ページをそれぞれ表す 3 つのルートを作成します。
//导入Vue和Vue Router import Vue from 'vue' import Router from 'vue-router' //导入组件 import Home from '@/components/Home' import News from '@/components/News' import Blog from '@/components/Blog' //使用Vue Router Vue.use(Router) export default new Router({ routes: [ { path: '/', name: 'Home', component: Home }, { path: '/news', name: 'News', component: News }, { path: '/blog', name: 'Blog', component: Blog } ] })
次に、ナビゲーション コンポーネントを作成し、コンポーネント内でジャンプする必要があるルーティング リンクを設定します。 <router-link>
タグは、ルート ジャンプを実装するためにここで使用されており、後で強調表示効果を実現するための鍵でもあります。
<template> <div> <router-link to="/" tag="span" v-bind:class="{ active: isActive('/')}">首页 </router-link> <router-link to="/news" tag="span" v-bind:class="{ active: isActive('/news')}">新闻 </router-link> <router-link to="/blog" tag="span" v-bind:class="{ active: isActive('/blog')}">博客 </router-link> </div> </template> <script> export default { methods: { isActive (path) { // 判断当前路由是否激活,如果是则添加类名,否则不添加 return this.$route.path === path } } } </script> <style> .active { color: red; } </style>
はコンポーネント内で isActive
メソッドを定義し、現在のルートがアクティブ化されているかどうかを決定します。現在のルートがナビゲーションに対応するルートである場合は、active
クラス名を追加します。それ以外の場合は、クラス名を追加しません。
<template> <div class="container"> <nav class="navbar navbar-default"> <div class="container-fluid"> <div class="navbar-header"> <router-link to="/" class="navbar-brand">Vue Router</router-link> </div> <div> <ul class="nav navbar-nav"> <Nav></Nav> </ul> </div> </div> </nav> <router-view></router-view> </div> </template> <script> import Nav from './Nav' export default { name: 'app', components: { Nav } } </script>
<template> <div class="container"> <nav class="navbar navbar-default"> <div class="container-fluid"> <div class="navbar-header"> <router-link to="/" class="navbar-brand">Vue Router</router-link> </div> <div> <ul class="nav navbar-nav"> <Nav></Nav> </ul> </div> </div> </nav> <router-view></router-view> </div> </template> <script> import Nav from './Nav' export default { name: 'app', components: { Nav } } </script>
以上がVue を使用してクリック ナビゲーションの強調表示効果を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。