最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue3實(shí)現(xiàn)自定義導(dǎo)航菜單的示例代碼

 更新時(shí)間:2024年11月30日 10:47:24   作者:搏博  
這篇文章主要為大家詳細(xì)介紹了如何使用vue3實(shí)現(xiàn)自定義導(dǎo)航菜單,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

一、創(chuàng)建項(xiàng)目

1. 打開(kāi)HBuilder X

2. 新建一個(gè)空項(xiàng)目

文件->新建->項(xiàng)目->uni-app

填寫(xiě)項(xiàng)目名稱:vue3demo

選擇項(xiàng)目存放目錄:D:/HBuilderProjects

一定要注意vue的版本,當(dāng)前選擇的版本為vue3

點(diǎn)擊“創(chuàng)建”之后進(jìn)入項(xiàng)目界面

其中各文件的作用

(1)pages是存放頁(yè)面的文件夾

(2)Static是存放圖片等資源的文件夾

(3)Manifest.json是項(xiàng)目的配置文件

(4)Pages.json是項(xiàng)目的頁(yè)面配置文件

二、自定義導(dǎo)航菜單實(shí)現(xiàn)

在 Vue 3 中實(shí)現(xiàn)自定義導(dǎo)航菜單涉及多個(gè)步驟,包括創(chuàng)建組件、定義數(shù)據(jù)、處理路由(如果使用Vue Router),以及應(yīng)用樣式。

1. 創(chuàng)建導(dǎo)航菜單組件

(1)新建組件存放的文件夾。在項(xiàng)目vue3demo上右鍵->新建->目錄,目錄名稱:components(不能更改)。

(2)在components下,創(chuàng)建一個(gè)新的Vue組件文件,比如NavMenu.vue,用于定義導(dǎo)航菜單的結(jié)構(gòu)和樣式。

添加路由鏈接: 在你的Vue組件中,你可以使用<router-link>組件來(lái)創(chuàng)建導(dǎo)航鏈接。當(dāng)用戶點(diǎn)擊這些鏈接時(shí),Vue Router會(huì)根據(jù)URL的變化自動(dòng)渲染對(duì)應(yīng)的組件,實(shí)現(xiàn)頁(yè)面之間的無(wú)刷新切換。

代碼如下:

<template>
	<nav class="nav-menu">
	    <ul>
	      <li v-for="item in menuItems" :key="item.name">
	        <router-link :to="item.route">{{ item.name }}</router-link>
	      </li>
	    </ul>
	</nav>
</template>
 
<script>
	export default {
	  name: 'NavMenu',
	  data() {
	    return {
	      menuItems: [
			{ name: '首頁(yè)', route: '/pages/index/index' },
	        { name: '列表', route: '/pages/list/list' },
	        { name: '關(guān)于', route: '/pages/about/about' },
	        { name: '聯(lián)系', route: '/pages/contact/contact' },
	        // 添加更多菜單項(xiàng)
	      ],
	    };
	  },
	};
</script>
 
<style>
.nav-menu {
    position: fixed; /* 固定定位 */
    bottom: 0; /* 底部對(duì)齊 */
    left: 0; /* 左側(cè)對(duì)齊 */
    width: 100%; /* 全寬 */
    background-color: #ccc; /* 背景顏色 */
    color: #fff; /* 文字顏色 */
    text-align: center; /* 文字居中 */
    padding: 10px 0; /* 內(nèi)邊距 */
    box-shadow: 0 -1px 5px rgba(0, 0, 0, 0.1); /* 底部陰影 */
}
.nav-menu ul {
    list-style: none; /* 移除列表樣式 */
    padding: 0; /* 移除內(nèi)邊距 */
    margin: 0; /* 移除外邊距 */
    display: flex; /* Flexbox布局 */
    justify-content: center; /* 子項(xiàng)居中 */
}
.nav-menu li {
  margin: 0 15px; /* 子項(xiàng)之間的間距 */
}
.nav-menu a {
  color: #fff; /* 鏈接顏色 */
    text-decoration: none; /* 移除下劃線 */
}
.nav-menu a:hover {
  color: #007bff;
}
</style>

2. 配置路由(使用Vue Router)

(1)Vue 3項(xiàng)目中安裝Vue Router

確保項(xiàng)目環(huán)境:確保你的開(kāi)發(fā)環(huán)境中已經(jīng)安裝了Node.js(可以直接在官網(wǎng)https://nodejs.org/zh-cn下載安裝)和npm。

安裝Vue Router:在你的項(xiàng)目根目錄下,打開(kāi)命令行工具(可以直接打開(kāi)HBuilder X的“終端”),并運(yùn)行命令來(lái)安裝Vue Router:npm install vue-router。

(2)創(chuàng)建路由配置       

在項(xiàng)目根目錄下,創(chuàng)建一個(gè)名為router的文件夾,并在其中新建一個(gè)index.js文件。在 router/index.js中配置Vue Router的路由規(guī)則。

//從vue-router包中導(dǎo)入了createRouter和createWebHistory函數(shù)。
import { createRouter, createWebHistory } from 'vue-router';
//以下為示例,當(dāng)前案例沒(méi)有用到
import Index from '../pages/index/index.vue';
import List from '../pages/list/list.vue';
import About from '../pages/about/about.vue';
import Contact from '../pages/contact/contact.vue';
 
// 定義路由規(guī)則
const routes = [
	//每個(gè)路由規(guī)則都是一個(gè)對(duì)象
	//包含path(路徑)、name(路由名稱,可選)、component(要渲染的組件)等屬性
	//以下為示例,當(dāng)前案例沒(méi)有用到
   { path: '/', name: 'Index', component: Index },
   { path: '/list', name: 'List', component: List },
   { path: '/about', name: 'About', component: About },
   { path: '/contact', name: 'Contact', component: Contact },
   // 可以添加更多路由
];
 
// 創(chuàng)建路由實(shí)例并傳入路由規(guī)則和路由歷史記錄模式
const router = createRouter({
  history: createWebHistory(process.env.BASE_URL),
  routes,
});
 
export default router;

(3)使用路由:在你的主入口文件(通常是main.js)中引入并使用這個(gè)路由實(shí)例。在main.js文件中任意位置增加下面的代碼:

import './router/index.js'

3. 在主應(yīng)用組件中使用導(dǎo)航菜單組件

在你的主應(yīng)用組件中,引入并使用NavMenu組件。本示例是在/pages/index/index.vue中。插入的內(nèi)容為下圖紅色框中的部分。

<template>
	<view class="content">
		<image class="logo" src="/static/logo.png"></image>
		<view class="text-area">
			<text class="title">{{title}}</text>
		</view>
	</view>
	<div id="app">
		<NavMenu />
		<router-view />
	</div>
</template>
 
<script>
	import NavMenu from '/components/NavMenu.vue';
	export default {
		components: {
		    NavMenu,
		  },
		data() {
			return {
				title: 'Hello'
			}
		},
		onLoad() {
		},
		methods: {
		}
	}
</script>
 
<style>
 
</style>

三、效果

注意事項(xiàng)

確保Vue Router版本與Vue 3兼容。

如果你不使用Vue Router,可以簡(jiǎn)單地將<router-link>替換為<a>標(biāo)簽,并設(shè)置相應(yīng)的href屬性。

以上就是vue3實(shí)現(xiàn)自定義導(dǎo)航菜單的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于vue3自定義導(dǎo)航菜單的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vue.set() (this.$set)的用法及說(shuō)明

    vue.set() (this.$set)的用法及說(shuō)明

    這篇文章主要介紹了vue.set() (this.$set)的用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • vue Element-ui input 遠(yuǎn)程搜索與修改建議顯示模版的示例代碼

    vue Element-ui input 遠(yuǎn)程搜索與修改建議顯示模版的示例代碼

    本文分為html,js和css代碼給大家詳細(xì)介紹了vue Element-ui input 遠(yuǎn)程搜索與修改建議顯示模版功能,感興趣的朋友一起看看吧
    2017-10-10
  • vue實(shí)現(xiàn)實(shí)時(shí)上傳文件進(jìn)度條

    vue實(shí)現(xiàn)實(shí)時(shí)上傳文件進(jìn)度條

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)實(shí)時(shí)上傳文件進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Vue駝峰與短橫線分割命名中有哪些坑

    Vue駝峰與短橫線分割命名中有哪些坑

    這篇文章主要介紹了Vue駝峰與短橫線分割命名中的注意事項(xiàng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2023-02-02
  • vue項(xiàng)目中data數(shù)據(jù)之間互相訪問(wèn)的實(shí)現(xiàn)

    vue項(xiàng)目中data數(shù)據(jù)之間互相訪問(wèn)的實(shí)現(xiàn)

    本文主要介紹了vue項(xiàng)目中data數(shù)據(jù)之間互相訪問(wèn)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • vue調(diào)取電腦攝像頭實(shí)現(xiàn)拍照功能

    vue調(diào)取電腦攝像頭實(shí)現(xiàn)拍照功能

    這篇文章主要為大家詳細(xì)介紹了vue調(diào)取電腦攝像頭實(shí)現(xiàn)拍照功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 關(guān)于vue的語(yǔ)法規(guī)則檢測(cè)報(bào)錯(cuò)問(wèn)題的解決

    關(guān)于vue的語(yǔ)法規(guī)則檢測(cè)報(bào)錯(cuò)問(wèn)題的解決

    在配置路有的時(shí)候,陸續(xù)出現(xiàn)了各種報(bào)錯(cuò)其中最多的是一些寫(xiě)法,例如空格,縮進(jìn),各種括號(hào),這篇文章主要介紹了關(guān)于vue的語(yǔ)法規(guī)則檢測(cè)報(bào)錯(cuò)問(wèn)題的解決,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2018-05-05
  • Vue2 的12種組件通訊

    Vue2 的12種組件通訊

    之前文章我們描述給過(guò)Vue3 的七通信使用,今天中五篇文章我們?cè)賮?lái)看看Vue2 的通信使用寫(xiě)法的相關(guān)資料,需要的朋友可以參考下面文章的具體內(nèi)容
    2021-09-09
  • Vue中父組件向子組件傳遞數(shù)據(jù)的幾種方法

    Vue中父組件向子組件傳遞數(shù)據(jù)的幾種方法

    最近在學(xué)習(xí)vue的源碼,總結(jié)了幾種vue中父子組件傳遞數(shù)據(jù)的方法。具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • Vue-CLI 項(xiàng)目在pycharm中配置方法

    Vue-CLI 項(xiàng)目在pycharm中配置方法

    這篇文章主要介紹了Vue-CLI 項(xiàng)目在pycharm中配置方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08

最新評(píng)論

苗栗市| 洪江市| 淳安县| 阿图什市| 太康县| 中卫市| 利川市| 泗洪县| 江华| 颍上县| 芒康县| 宾川县| 舟山市| 河东区| 收藏| 嘉祥县| 台东市| 营口市| 宝清县| 金寨县| 灵石县| 元氏县| 武陟县| 阿勒泰市| 上高县| 咸阳市| 巩义市| 会泽县| 宁陕县| 满城县| 平罗县| 巢湖市| 宁晋县| 景洪市| 哈密市| 泸州市| 阜新| 平利县| 平邑县| 贵溪市| 乐亭县|