位置: IT常识 - 正文
推荐整理分享Vue自定义网页顶部导航栏(vue自定义页面),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:vue网页标题,vue置顶功能,vue制作网页,vue制作漂亮网页,vue自定义dialog,vue设置网页title,vue怎么设置首页,vue设置网页title,内容如对您有帮助,希望把文章链接给更多的朋友!
说明:此组件是为论坛类项目定制的一个实用的顶部导航栏,当然也可以用于其他的Web项目,只需要稍作修改便可以达到想要的效果。其中导航栏包含了搜索栏,用户头像,以及基本的导航标题。导航栏标题的选中是通过 vue-router(路由)实现。
💕💕*:文末附下载连接*
导航栏效果
详细步骤
第一步:安装 vue-router
npm i vue-router@3第二步:在 main.js 中引入和使用 VueRouter
import VueRouter from 'vue-router';Vue.use(VueRouter)第三步: 创建一个组件BBSHeader
<template> <div> <div class="header"> <div class="box"> <h1> <img src="../assets/logo.png"> <span>Aubuary</span> </h1> <nav> <router-link active-class="active" to="/home">首页</router-link> <router-link active-class="active" to="/ask">问答</router-link> <router-link active-class="active" to="/community">社区</router-link> </nav> </div> <div class="box"> <input class="text" type="text" placeholder="请输入关键词~~~" name="search"> <input class="button" type="button" value="搜索"> <img src="../assets/portrait.png"> <nav> <a >消息</a> <a>发布</a> </nav> </div> </div> <div class="contents"> <div class="content"> <!--指定组件的位置--> <router-view></router-view> </div> </div> </div></template><script> export default { name: "BBSHeader" }</script><style scoped> .header{ display: flex; align-items: center; justify-content: space-between; height: 50px; background-color:#292c2f; color: #ffffff; /*吸顶效果*/ /* position: sticky; position: -webkit-sticky; !*兼容 -webkit 内核的浏览器*! top: 0px; !*必须设一个值,否则不生效*!*/ } .box{ display: flex; align-items: center; } h1{ display: flex; align-items: center; font: normal 28px Cookie, Arial, Helvetica, sans-serif; padding: 0px 20px; } img{ width: 40px; height: 40px; } nav { display: flex; align-items: center; margin: 0px 40px; font:16px Arial, Helvetica, sans-serif; } nav a{ padding: 0 15px; width: 32px; text-decoration:none; color: #ffffff; font-size: 16px; font-weight: normal; opacity: 0.9; } nav a:hover { opacity: 1; } .active { color: #608bd2; pointer-events: none; opacity: 1; } /*搜索框*/ .text{ height: 22px; font-size: 14px; border: 1px solid #ccc; padding: 3px 16px; border-bottom-left-radius: 20px; border-top-left-radius: 20px; } .text:focus{ outline: none; border-color: rgba(82, 168, 236, 0.8); box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); } .button{ width: 60px; height: 30px; font-size: 14px; margin-right: 35px; border: 1px solid #608bd2; background-color: #608bd2; border-top-right-radius: 20px; border-bottom-right-radius: 20px; } .contents{ display: flex; justify-content: center; } .content{ display: flex; width: 1400px; height: 1400px; /*background-color: #f0f2f3;*/ }</style>第四步:创建一个路由器 新建如下文件夹和文件 |–pages |–BBSAsk.vue |–BBSCommunity.vue |–BBSHome.vue |–router |–index.js
其中index.js中的内容如下
import VueRouter from 'vue-router';import BBSHome from "@/pages/BBSHome";import BBSAsk from "@/pages/BBSAsk";import BBSCommunity from "@/pages/BBSCommunity";//创建一个路由器const router = new VueRouter({ mode: 'history', routes:[ { name: 'home', path:'/home', component:BBSHome, }, { name: 'ask', path: '/ask', component: BBSAsk, }, { name:'community', path: '/community', component:BBSCommunity, } ]})export default router第五步:在 main.js 中引入创建好的 router
import router from "@/router";//在 new Vue对象的时候上一篇:【新星计划】如何写好你的博客,涨粉技巧总结(新星计划会限流吗)
下一篇:Vue+Element UI-el-date-picker时间日期选择器组件(实现向后端传值)
友情链接: 武汉网站建设