vue2.0 + element-ui 实战项目-导航栏跳转路由

2020-10-29  本文已影响0人  祈澈菇凉

自从用饿了么框架重构项目以来,遇到 很多问题,我都有一一记录下来,现在特喜欢这个框架,说实话,如果你是用了vue这个技术栈的话,一定要用饿了么的pc端框架哦,遇到问题的时候在网上百度一下,就能找到解决方案,还有很多社区可以讨论,社区文档都比较成熟,很容易上手~~

Element UI手册:https://cloud.tencent.com/developer/doc/1270
github地址:https://github.com/ElemeFE/element

vue2.0官方网站:http://caibaojian.com/vue/guide/installation.html
element-ui官方网站:https://element.eleme.cn/#/zh-CN


1:components
新建页面

图片.png

2:打开app.vue
写代码

<template>
  <div>
    <el-col :span="2">
      <el-menu
        :default-active="this.$route.path"
        router
        mode="horizontal"
        class="el-menu-vertical-demo"
        @open="handleOpen"
        @close="handleClose"
        background-color="#545c64"
        text-color="#fff"
        active-text-color="#ffd04b"
      >
        <el-menu-item v-for="(item, i) in navList" :key="i" :index="item.name">
          <template slot="title">
            <i class="el-icon-s-platform"></i>
            <span> {{ item.navItem }}</span>
          </template>
        </el-menu-item>
      </el-menu>
    </el-col>

    <router-view class="menu-right" />
  </div>
</template>
<script>
export default {
  data() {
    return {
      navList: [
        { name: "/views/chip", navItem: "地图碎片" },
        { name: "/views/device", navItem: "地图设备" },
        { name: "/views/params", navItem: "地图参数" },
        { name: "/views/picture", navItem: "地图图片" },
      ],
    };
  },
  methods: {
    handleOpen(key, keyPath) {
      console.log(key, keyPath);
    },
    handleClose(key, keyPath) {
      console.log(key, keyPath);
    },
  },
};
</script>

<style>
.menu-right {
  margin-left: 200px;
}
</style>

3:路由index.js

import Vue from 'vue'
import Router from 'vue-router'
import Chip from '@/views/chip'
import HelloWorld from '@/components/HelloWorld'
import Device from '@/views/device'
import Params from '@/views/params'
import Picture from '@/views/picture'
Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'HelloWorld',
      component: HelloWorld
    },
     {
      path: '/views/chip',
      name: 'chip',
      component: Chip
    }, {
      path: '/views/device',
      name: 'device',
      component: Device
    },
     {
      path: '/views/params',
      name: 'params',
      component: Params
    },{
      path: '/views/picture',
      name: 'picture',
      component: Picture
    }
  ]
})

4:新页面的内容,我写的比较简单,需要自己写下功能需求所在的代码
picture.vue

<template>  
    <div>
    我是picture页面
    </div>  
</template>
<script>
</script>
<style>
</style>


5:效果就可以看了


上一篇下一篇

猜你喜欢

热点阅读