标题:电商后台管理系统——权限列表
A.添加权限列表路由
创建权限管理组件(Rights.vue),并在router.js添加对应的路由规则//主页中已完成
B.添加面包屑导航
<template>
<div>
<!-- 面包屑导航区域 el-breadcrumb-->
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item>
....
</el-breadcrumb>
<!-- 卡片视图 el-card->el-table -->
</div>
</template>
C.显示数据
在data中添加一个rightsList数据,在methods中提供一个getRightsList方法发送请求获取权限列表数据,在created中调用这个方法获取数据
组件Tag 标签:用于标记和选择。
D 权限等级列作用域插槽放入3个;只显示一个,使用v-if…else if else,判断scope.row,level
<el-table :data="rightsList" stripe>
<el-table-column type="index"></el-table-column>
<el-table-column label="权限名称" prop="authName"></el-table-column>
<el-table-column label="路径" prop="path"></el-table-column>
<el-table-column label="权限等级" prop="level">
<template slot-scope="scope">
<el-tag v-if="scope.row.level === 0">一级权限</el-tag>
<el-tag v-if="scope.row.level === 1" type="success">二级权限</el-tag>
<el-tag v-if="scope.row.level === 2" type="warning">三级权限</el-tag>
</template>
</el-table-column>
</el-table>
<script>
export default {
data(){
return {
//列表形式的权限
rightsList:[]
}
},
created(){
this.getRightsList();
},
methods:{
async getRightsList(){
const {data:res} = await this.$http.get('rights/list')
//如果返回状态为异常状态则报错并返回
if (res.meta.status !== 200)
return this.$message.error('获取权限列表失败')
//如果返回状态正常,将请求的数据保存在data中
this.rightsList = res.data
}
}
}
</script>