vue搭建后台管理页面(点击左侧导航,切换右侧内容)

home.vue页面

<template>
  <div style="background-color: #EBEBEB;min-height:900px">
    <div style="width:100%;background-color: #636363; overflow: hidden">
            <span class="demonstration" style="float:left;padding-top:10px;color:white;margin-left:1%">
                网站首页
            </span>
      <span class="demonstration" style="float:left;padding:5px;color:white;margin-left:2%;width:15%">
                <el-input
                  placeholder="请输入"
                  icon="search"
                  v-model="searchCriteria"
                  :on-icon-click="handleIconClick">
                </el-input>
            </span>
      <span class="demonstration" style="float:right;padding-top:10px;margin-right:1%">
                <el-dropdown trigger="click">
                  <span class="el-dropdown-link" style="color:white">
                    admin<i class="el-icon-caret-bottom el-icon--right"></i>
                  </span>
                  <el-dropdown-menu slot="dropdown">
                    <el-dropdown-item>个人信息</el-dropdown-item>
                    <el-dropdown-item>退出登录</el-dropdown-item>
                  </el-dropdown-menu>
                </el-dropdown>
            </span>
    </div>

    <div style="margin-top:5px">
      <el-row :gutter="10">
        <el-col :xs="4" :sm="4" :md="4" :lg="4">
          <div>
            <el-menu default-active="1" class="el-menu-vertical-demo" style="min-height:900px" @select="handleSelect">
              <el-menu-item index="1"><i class="el-icon-message"></i>导航一</el-menu-item>
              <el-menu-item index="2"><i class="el-icon-menu"></i>导航二</el-menu-item>
              <el-menu-item index="3"><i class="el-icon-setting"></i>导航三</el-menu-item>
            </el-menu>
          </div>
        </el-col>
        <el-col :xs="20" :sm="20" :md="20" :lg="20">
          <div>
            <div style="border: 1px solid #A6A6A6; border-radius:6px; padding:5px; margin:2px; background-color: white">
              <el-breadcrumb separator="/">
                <el-breadcrumb-item v-for="item in breadcrumbItems">{{item}}</el-breadcrumb-item>
              </el-breadcrumb>
            </div>
          </div>

          <div style="margin-top:10px">
            <router-view></router-view>
          </div>
        </el-col>
      </el-row>
    </div>
  </div>
</template>
<script type="text/ecmascript-6">
  export default {
    data(){
      return {
        searchCriteria: ‘‘,
        breadcrumbItems: [‘导航一‘],
      }
    },

    methods:{
      handleIconClick(ev) {
        console.log(ev);
      },

      handleSelect(key, keyPath){
        switch(key){
          case ‘1‘:
            this.$router.push(‘/Page1‘);
            this.breadcrumbItems  = [‘导航一‘]
            break;
          case ‘2‘:
            this.$router.push(‘/Page2‘)
            this.breadcrumbItems  = [‘导航二‘]
            break;
          case ‘3‘:
            this.$router.push(‘/Page3‘)
            this.breadcrumbItems  = [‘导航三‘]
            break;
        }
      },

    },
  }
</script>

插件Page1,Page2,Page3页面

<template>
  <div>
    这是第一个页面
  </div>
</template>
<script type="text/ecmascript-6">
  export default {
    data(){
      return {}
    }
  }
</script>

index.js文件

import Vue from ‘vue‘
import Router from ‘vue-router‘
import Home from ‘@/components/Home‘
import Login from ‘@/components/Login‘
import Page1 from ‘@/components/page1‘
import Page2 from ‘@/components/page2‘
import Page3 from ‘@/components/page3‘

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: ‘/‘,
      name: ‘home‘,
      component: Home,
    redirect:"Page1",//重定向,第一次进入就进入Page1,不添加的话第一次进入右侧是空白
      children:[
        {
          path: ‘/Page1‘,
          name: ‘Page1‘,
          component: Page1
        },
        {
          path: ‘/Page2‘,
          name: ‘Page2‘,
          component: Page2
        },
        {
          path: ‘/Page3‘,
          name: ‘Page3‘,
          component: Page3
        }
      ]
    }
  ]
})

  

添加redirect:"Page1",输入地址的时候重定向效果

没添加redirect:"Page1",输入地址没重定向效果

一、home.vue的<router-view></router-view>

二、home.vue的this.$router.push(‘/Page1‘)

三、index.js添加redirect:"Page1"重定向

四、index.js的children子路由

原文地址:https://www.cnblogs.com/YAN-HUA/p/9707654.html

时间: 2024-08-29 23:02:58

vue搭建后台管理页面(点击左侧导航,切换右侧内容)的相关文章

web实现点击左侧导航,右侧加载不同的网页(这种布局多用于后台管理系统)

(1)实现方法:采用ajax实现点击左侧菜单,右侧加载不同网页(在整个页面无刷新的情况下实现右侧局部刷新,用到ajax注意需要在服务器环境下运行,从HBuilder自带的服务器中打开浏览效果即可) (2)原理:ajax的局部刷新原理:通过.load()重新加载页面中的某一部分,巧妙的借助data-*的自定义属性来存储数据,点击的时候修改锚点,因为地址有变,所以刷新的时候仍然会保持当前的页面内容而不是切换到第一个. (3)适用场景:遇到ajax局部刷新的需求也有很多,有时候比较简单,当内容较少,适

iframe 点击左侧导航列表 右侧出现对应界面

HTML 代码结构如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <div> <ul> <li><a href="http://www.w3school.com.c

5. 添加后台管理页面

接着上篇继续,博客网站少不了后台管理页面,在后台可以添加文章以及维护基础数据,因此本文主要就介绍怎样添加视图页面.怎样使用视图模型.绑定静态资源以及ThymeLeaf模板引擎的基本使用,具体如下:1. 添加Menu类,表示后台管理页面中的左侧菜单 1 package com.lvniao.blog.model; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 6 public class Menu { 7 8 private

HTML高级标签(2)————窗口分帧(2)————后台管理页面

使用frameset进行窗口分帧,构建简易的后台页面.这篇博客就作为一个简易后台管理页面的实战演练. 1  首先,需要一个页面,使用<frameset>按比例划分为适合的三个区域:头部,菜单,主体. <frameset>不能放在<body>中编写. 给每一个<frame>进行命名,便于后面链接时target属性可以直接指向指定位置. 代码如下(文件名自定义,我写的是 frameset.html): <html> <head> <

bootstrap 后台管理页面

声明: 左侧菜单借鉴了网上 的二级菜单的样式.希望作者不要追究我的法律责任. 功能说明:点击左侧菜单,右侧生成tabs,加载数据.tabs 可关闭.默认选中. 插件说明:使用bootstrapgrid 和jquery ui bootstrap.数据显示使用bootstrapgrid, tabs 生成和删除,使用jquery ui bootstrap. index.html <!DOCTYPE html> <html> <head> <meta charset=&q

Vue Admin - 基于 Vue &amp; Bulma 后台管理面板

Vue Admin 是一个基于 Vue 2.0 & Bulma 0.3 的后台管理面板(管理系统),相当于是 Vue 版本的 Bootstrap 管理系统,提供了一组通用的后台界面 UI 和组件,其中还有丰富的图表组件,开箱即用.赶紧来体验一下吧. 在线演示      免费下载 您可能感兴趣的相关文章 网站开发中很有用的 jQuery 效果[附源码] 分享35个让人惊讶的 CSS3 动画效果演示 十分惊艳的8个 HTML5 & JavaScript 特效 Web 开发中很实用的10个效果[

wordpress——在插件后台管理页面中添加javascript和ajax

最近在开发一个wordpress插件,需要在插件的后台管理页面上,添加自己写的javascript文件,以达到一些功能. 查了好几天的文档和资料,终于实现了. 这里先介绍下wordpress后台页面添加javascript的过程,再介绍添加ajax的过程. 添加javascript 首先我们需要知道wordpress插件开发的框架,然后再介绍javascript添加的步骤. 添加插件设置页面 开发插件,总需要在管理后台添加自己的插件设置页面.插件设置子页面,在这些页面中,可以设置和保存插件的一些

后台管理页面布局

1 <!DOCTYPE html> 2 <!--后台管理页面布局1--> 3 <html lang="en"> 4 <head> 5 <meta charset="UTF-8"> 6 <title>Title</title> 7 <style> 8 body{ 9 margin: 0; 10 } 11 .left{ 12 float: left; 13 } 14 .rig

最为纯粹简单的后台管理页面框架

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title