vue+element-ui实现头部导航栏组件

话不多说,先上一张效果图:
在这里插入图片描述
这是一个头部导航栏,网站最常见的一个功能,鼠标点击切换不同界面,样式跟随。
首先就是下载element-ui框架

npm install element-ui

在main.js文件里面全局引入这个ui框架
在这里插入图片描述

然后就是在app.vue文件里面注册这个top组件
在这里插入图片描述

这是用vue和“饿了么”来实现的头部导航栏,看一下代码:

<template>
  <div class="header">
    <div class="img">
      <img src="@/assets/image/index/logo.png" alt="">
    </div>
    <el-menu
      :default-active="this.$route.path"
      class="el-menu-demo"
      mode="horizontal"
      @select="handleSelect"
      router
      background-color="#fff"
      text-color="#333"
      active-text-color="#0084ff"
      style="flex:1"
    >
      <el-menu-item v-for="(item, i) in navList" :key="i" :index="item.name">
        <template slot="title">
          <span> {{ item.navItem }}</span>
        </template>
      </el-menu-item>
    </el-menu>
  </div>
</template>

<script>
export default {
    data() {
    return {
        navList:[
            {name:'/home', navItem:'首页'},
            {name:'/home/classRoom',navItem:'我的班级'},
            {name:'/home/course',navItem:'我的课程'},
            {name:'/home/exam',navItem:'创建考试'},
            {name:'/home/practice',navItem:'创建练习'},
        ]
                      
    }
  },
  methods: {
    handleSelect(key, keyPath) {
      }
  }
}
</script>

<style>
.el-menu-item{
  font-size: 18px !important;
}
.el-menu-item.is-active {
    color: #ea5b2c !important;
    font-size: 18px !important;
}
.el-menu--horizontal>.el-menu-item.is-active {
  border-bottom: 2px solid #ea5b2c !important;
}
</style>
<style lang="scss" scoped>
.header {
  display: flex;
  width: 100%;
  .img {
    background: #ffffff;
    border-bottom: solid 1px #e6e6e6;
    img {
      height:50px;
      padding:10px;
    }
  }
}
</style>

能力有限,写的不好的地方还望路过的大佬指点一二。

  • 4
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
当然!下面是一个基于Vue.js和Element UI的多功能首页的示例: 1. 在src/views文件夹下创建Home.vue组件,作为首页的主要内容。 ```vue <template> <div class="home"> <h1>Welcome to Home Page</h1> <!-- 添加你想要展示的内容 --> </div> </template> <script> export default { // 组件逻辑代码 } </script> <style scoped> /* 组件样式 */ </style> ``` 2. 在src/components文件夹下创建Navbar.vue组件,作为顶部导航。 ```vue <template> <nav class="navbar"> <ul> <li><a href="#">Home</a></li> <!-- 添加其他导航项 --> </ul> </nav> </template> <script> export default { // 组件逻辑代码 } </script> <style scoped> /* 组件样式 */ </style> ``` 3. 在src/App.vue文件中,将Navbar组件和Home组件添加到首页。 ```vue <template> <div id="app"> <Navbar /> <router-view /> </div> </template> <script> import Navbar from './components/Navbar.vue' export default { name: 'App', components: { Navbar } } </script> <style> /* 全局样式 */ </style> ``` 4. 在src/main.js文件中,添加Element UI的引入和全局样式。 ```javascript import Vue from 'vue' import App from './App.vue' import ElementUI from 'element-ui' import 'element-ui/lib/theme-chalk/index.css' Vue.use(ElementUI) Vue.config.productionTip = false new Vue({ render: h => h(App), }).$mount('#app') ``` 现在,你可以在Home.vue组件中添加任何你想要展示的内容,比如轮播图、卡片、列表等等。在Navbar.vue组件中,你可以添加其他导航项并进行相应的路由配置。 这个示例只是一个基本的多功能首页的示例,你可以根据具体的需求进行扩展和修改,添加更多的功能和组件。希望这个示例对你有帮助!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值