当前位置:   article > 正文

Element UI样式修改之NavMenu导航菜单_elementui 导航菜单自定义图标

elementui 导航菜单自定义图标

目录

Element UI样式修改之NavMenu导航菜单

一、成果展示

二、步骤

三、完整代码


Element UI样式修改之NavMenu导航菜单

一、成果展示

Element UI官网给出的例子如图一,我想要改变导航栏文字右边的三角图标成图二的样式:

 图一

 图二


二、步骤

1. 首先将官网的例子复制到你的项目里面去,运行起来,鼠标右击选择检查:

2.打开Element UI图标的网页,然后右击选择检查,按照上图步骤就可以看到我们想要的图标的样式:

3.最后在<style></style>中添加以下代码即可达到我们想要的效果:

  1. .el-icon-arrow-down:before {
  2. content: "";
  3. font-size: 18px;
  4. }

三、完整代码

授人以鱼不如授人以渔,看完二的步骤就好了,Whatever,还是贴上完整代码App.vue记录于此:

  1. <template>
  2. <div id="app">
  3. <el-container>
  4. <el-header>
  5. header
  6. </el-header>
  7. <el-container>
  8. <el-aside :width="isCollapse?'64px':'200px'">
  9. <div class="toggle-button" @click="toggleCollapse">|||</div>
  10. <el-menu default-active="1-4-1"
  11. class="el-menu-vertical-demo"
  12. background-color="#545c64"
  13. text-color="#fff"
  14. active-text-color="#ffd04b"
  15. :collapse-transition="false"
  16. unique-opened
  17. @open="handleOpen"
  18. @close="handleClose"
  19. :collapse="isCollapse"
  20. :router="true">
  21. <el-submenu index="1">
  22. <template slot="title">
  23. <i class="el-icon-location"></i>
  24. <span slot="title">导航一</span>
  25. </template>
  26. <el-menu-item-group>
  27. <span slot="title">分组一</span>
  28. <el-menu-item index="/">选项1</el-menu-item>
  29. <el-menu-item index="1-2">选项2</el-menu-item>
  30. </el-menu-item-group>
  31. <el-menu-item-group title="分组2">
  32. <el-menu-item index="1-3">选项3</el-menu-item>
  33. </el-menu-item-group>
  34. <el-submenu index="1-4">
  35. <span slot="title">选项4</span>
  36. <el-menu-item index="1-4-1">选项1</el-menu-item>
  37. </el-submenu>
  38. </el-submenu>
  39. <el-menu-item index="2">
  40. <i class="el-icon-menu"></i>
  41. <span slot="title">导航二</span>
  42. </el-menu-item>
  43. <el-menu-item index="3" disabled>
  44. <i class="el-icon-document"></i>
  45. <span slot="title">导航三</span>
  46. </el-menu-item>
  47. <el-menu-item index="4">
  48. <i class="el-icon-setting"></i>
  49. <span slot="title">导航四</span>
  50. </el-menu-item>
  51. </el-menu>
  52. </el-aside>
  53. <el-main>
  54. <router-view></router-view>
  55. </el-main>
  56. </el-container>
  57. <el-footer>
  58. 版权所有,翻版必究
  59. </el-footer>
  60. </el-container>
  61. </div>
  62. </template>
  63. <script>
  64. export default {
  65. data() {
  66. return {
  67. isCollapse: false,
  68. };
  69. },
  70. methods: {
  71. handleOpen(key, keyPath) {
  72. console.log(key, keyPath);
  73. },
  74. handleClose(key, keyPath) {
  75. console.log(key, keyPath);
  76. },
  77. // 点击按钮,切换菜单的折叠与展开
  78. toggleCollapse () {
  79. this.isCollapse = !this.isCollapse
  80. }
  81. }
  82. }
  83. </script>
  84. <style>
  85. #app {
  86. font-family: Avenir, Helvetica, Arial, sans-serif;
  87. -webkit-font-smoothing: antialiased;
  88. -moz-osx-font-smoothing: grayscale;
  89. text-align: center;
  90. color: #2c3e50;
  91. }
  92. .el-menu-vertical-demo:not(.el-menu--collapse) {
  93. width: 200px;
  94. min-height: 400px;
  95. }
  96. .el-container{
  97. height: 100%;
  98. }
  99. .el-header,
  100. .el-footer {
  101. background-color: #4a5064;
  102. color: peru;
  103. padding: 20px;
  104. }
  105. .el-aside{
  106. background-color: rgb(238, 241, 246);
  107. border: 1px solid #eee
  108. }
  109. .toggle-button {
  110. background-color: #4a5064;
  111. font-size: 10px;
  112. line-height: 24px;
  113. color: #fff;
  114. text-align: center;
  115. letter-spacing: 0.2em;
  116. cursor: pointer;
  117. }
  118. .el-icon-arrow-down:before {
  119. content: "";
  120. font-size: 18px;
  121. }
  122. </style>

PS:代码<el-menu></el-menu>:router="true"可以做如下说明:

参数说明类型默认值
router是否使用 vue-router 的模式,启用该模式会在激活导航时以 index 作为 path 进行路由跳转booleanfalse

<el-menu-item index="/">选项1</el-menu-item>中的index="/"就指明了导航目的地址,路由匹配到的组件将渲染在这里:<router-view></router-view>

  1. <el-main>
  2.   <router-view></router-view>
  3. </el-main>

定义路由的代码在index.js中:

  1. import Vue from 'vue'
  2. import VueRouter from 'vue-router'
  3. import HomeView from '../views/HomeView.vue'
  4. Vue.use(VueRouter)
  5. const routes = [
  6. {
  7. path: '/',
  8. name: 'home',
  9. component: HomeView
  10. },
  11. {
  12. path: '/layout',
  13. name: 'layout',
  14. component: function () {
  15. return import( '../views/LayoutView.vue')
  16. }
  17. },
  18. {
  19. path: '/test',
  20. name: 'test',
  21. component: function () {
  22. return import( '../views/TestView.vue')
  23. }
  24. },
  25. {
  26. path: '/container',
  27. name: 'container',
  28. component: function () {
  29. return import( '../views/ContainerView.vue')
  30. }
  31. },
  32. {
  33. path: '/about',
  34. name: 'about',
  35. component: function () {
  36. return import( '../views/AboutView.vue')
  37. }
  38. }
  39. ]
  40. const router = new VueRouter({
  41. mode: 'history',
  42. base: process.env.BASE_URL,
  43. routes
  44. })
  45. export default router

所以才有了点击选项一,在<el-main></el-main>中展示想要跳转的组件:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/113212
推荐阅读
相关标签
  

闽ICP备14008679号