1.頁面布局
因為之前在工程中添加了elementui,因此用elementui來做頁面;
打開elementui官網:
https://element.eleme.cn/#/zh-CN
找到組件-》Container布局容器
找一個看得順眼的,復制代碼到自己的工程的App.Vue中;

代碼:
<template> <div id="app"> <el-container style="height: 500px; border: 1px solid #eee"> <el-aside width="200px" style=" <el-menu :default-openeds="['1', '3']"> <el-submenu index="1"> <template slot="title"><i class="el-icon-message"></i>導航一</template> <el-menu-item-group> <template slot="title">分組一</template> <el-menu-item index="1-1">選項1</el-menu-item> <el-menu-item index="1-2">選項2</el-menu-item> </el-menu-item-group> <el-menu-item-group title="分組2"> <el-menu-item index="1-3">選項3</el-menu-item> </el-menu-item-group> <el-submenu index="1-4"> <template slot="title">選項4</template> <el-menu-item index="1-4-1">選項4-1</el-menu-item> </el-submenu> </el-submenu> <el-submenu index="2"> <template slot="title"><i class="el-icon-menu"></i>導航二</template> <el-menu-item-group> <template slot="title">分組一</template> <el-menu-item index="2-1">選項1</el-menu-item> <el-menu-item index="2-2">選項2</el-menu-item> </el-menu-item-group> <el-menu-item-group title="分組2"> <el-menu-item index="2-3">選項3</el-menu-item> </el-menu-item-group> <el-submenu index="2-4"> <template slot="title">選項4</template> <el-menu-item index="2-4-1">選項4-1</el-menu-item> </el-submenu> </el-submenu> <el-submenu index="3"> <template slot="title"><i class="el-icon-setting"></i>導航三</template> <el-menu-item-group> <template slot="title">分組一</template> <el-menu-item index="3-1">選項1</el-menu-item> <el-menu-item index="3-2">選項2</el-menu-item> </el-menu-item-group> <el-menu-item-group title="分組2"> <el-menu-item index="3-3">選項3</el-menu-item> </el-menu-item-group> <el-submenu index="3-4"> <template slot="title">選項4</template> <el-menu-item index="3-4-1">選項4-1</el-menu-item> </el-submenu> </el-submenu> </el-menu> </el-aside> <el-container> <el-header style="text-align: right; font-size: 12px"> <el-dropdown> <i class="el-icon-setting" style="margin-right: 15px"></i> <el-dropdown-menu slot="dropdown"> <el-dropdown-item>查看</el-dropdown-item> <el-dropdown-item>新增</el-dropdown-item> <el-dropdown-item>刪除</el-dropdown-item> </el-dropdown-menu> </el-dropdown> <span>王小虎</span> </el-header> <el-main> <el-table :data="tableData"> <el-table-column prop="date" label="日期" width="140"> </el-table-column> <el-table-column prop="name" label="姓名" width="120"> </el-table-column> <el-table-column prop="address" label="地址"> </el-table-column> </el-table> </el-main> </el-container> </el-container> </div> </template> <style> .el-header { color: #333; line-height: 60px; } .el-aside { color: #333; } </style> <script> export default { data() { const item = { date: '2016-05-02', name: '王小虎', address: '上海市普陀區金沙江路 1518 弄' }; return { tableData: Array(20).fill(item) } } }; </script>
xx.vue文件包括三部分:
template ->頁面,只能有一個根節點,也就是說<template>標簽下一級子目錄中有且只能有一個<div>
style ->樣式
script ->js
結果:主頁變成這樣

2.創建導航欄
主要是修改左側的導航欄,點擊可以調到自定義的頁面;
主要步驟:
新建幾個頁面(xxx.vue可以放在views目錄下)
配置路由(修改router目錄下的index.js)
修改左側導航欄(用v-for遍歷配置的路由信息)
1)頁面
主頁index.vue,只需要放一個路由窗口<router-view>即可;
<template> <router-view></router-view> </template> <script> export default { name: "Index" } </script> <style scoped> </style>
2)測試頁面
創建幾個簡單的頁面用來測試
<template> <div>這是頁面一</div> </template> <script> export default { name: "PageOne" } </script> <style> </style>
3)配置路由
修改router目錄下的index.js;
給index.vue和幾個測試頁面配置路由,用來點擊時可以在路由窗口中顯示對應頁面;
import Vue from 'vue' import VueRouter from 'vue-router' import Index from '../views/Index.vue' import PageOne from '../views/PageOne.vue' import PageTwo from '../views/PageTwo.vue' import PageThree from '../views/PageThree.vue' import PageFour from '../views/PageFour.vue' Vue.use(VueRouter) const routes = [ { path: '/', name: '導航一', component: Index, redirect:'/p1', //重定向,用來默認顯示Page1 children:[ { path: '/p1', name: 'Page1', component: PageOne }, { path: '/p2', name: 'Page2', component: PageTwo } ] }, { path:'/nav2', name:'導航二', component:Index, children:[ { path: '/p3', name: 'Page3', component: PageThree }, { path: '/p4', name: 'Page4', component: PageFour } ] } ] const router = new VueRouter({ routes }) export default router
4)修改導航欄
導航欄在App.vue中;
主要是從路由中獲取導航欄的數據,並且給導航綁定路由以便跳轉;
主要代碼:
<el-aside width="200px" style=" <el-menu router> <!--需要給標簽加上router屬性才能跳轉--> <el-submenu v-for="(item, index) in $router.options.routes" :index="index+''"> <template slot="title"><i class="el-icon-message"></i>{{item.name}}</template> <!--index屬性的值設為要跳轉的路徑--> <!--class的值動態添加,來實現點擊變色,用$route.path取瀏覽器跳轉地址,注意這里不是$router--> <el-menu-item v-for="(item2, index2) in item.children" :index="item2.path" :class="$route.path==item2.path?'is-active':''" >{{item2.name}}</el-menu-item> </el-submenu> </el-menu> </el-aside>
5)效果
