zoukankan      html  css  js  c++  java
  • vue+elementUI实现权限的部门管理

    回头看写过的项目,发现以前感觉有难度的地方,现在想想很简单,在此记录一下,不对的地方欢迎吐槽!!!
    复制代码

    1.实现效果

    2.需求分析

    主要用于平台各个部门不同权限的操作,将指定的账号放到对应的权限部门下,然后根据后台返回的账号信息,显示对应的模块;
    复制代码

    3.直接上代码

    更多elementUI详情:element.eleme.io/#/zh-CN/com…

    模板使用:

    -解析-

    (1)indeterminate 属性用以表示 checkbox 的不确定状态,一般用于实现全选的效果;

    (2)v-modal绑定的是数据中改项的布尔值,用于显示是否勾选的状态;

    (3)@change的事件中,用来根据第一级的选择状态处理子级的选中状态;

    <template>
      <el-checkbox  :label="item.id" :indeterminate="!item.checkAll" 
           v-model="item.checkAll" @change="handleCheckAllChange(item)" > {{item.title}}
      </el-checkbox>
            <el-checkbox-group  class="sonItem"  v-model="item.checkedCities"   
               @change="handleCheckedCitiesChange(item)">
                    <el-checkbox v-for="items in item.child" :label="items.cid" :key="items.cid">
                       {{items.name}}
                     </el-checkbox>
            </el-checkbox-group>
    </template>
    复制代码

    数据处理:

    -解析:-

    checkAll:判断母项是否被全选的状态; checkedCities:存储选中项,发送给后台;

     data(){
          return {
          itemOptions: [
              {
                title: "商品管理", id: "shangpin",  checkAll:false,checkedCities:[],
                child: [
                  {name: '商品管理', cid: 'Commodityanagement'},
                  {name: '分类管理', cid: 'ClassificationManagement'}, {
                  name: '品牌管理', cid: 'BrandManagement'},
                  {name: '评价管理', cid: 'ManagementConsulting'},
                  ],
              },
              {title: '交易管理', id: "jiaoyi",checkAll:false,checkedCities:[],
                child: [
                  {name: "订单管理", cid: 'orderManagement'},
                  {name: "退货处理", cid: "returnManagement"},
                  {name: "异议处理", cid: "ObjectionHandling"},
                  ]
              },
              {
                title: '会员管理', id: "huiyuan",checkAll:false,checkedCities:[],
                child: [
                  {name: "会员管理", cid: 'MemberManagement'},
                  {name: "会员等级", cid: "MembershipGrade"},
                  {name: "会员积分", cid: "MemberIntegral"},
                  {name: "积分规则", cid: 'IntegralRules'},
                ]
              },
            ],
                  }
        },
    复制代码

    方法处理:

        methods:{
    //        全选按钮
          handleCheckAllChange(item) {
            if(item.checkAll==true){
              for(var i=0;i<item.child.length;i++){
                item.checkedCities.push(item.child[i].cid);
              }
            }else{
              item.checkedCities=[];
            }
          },
    //      单选按钮
          handleCheckedCitiesChange(item) {
            if(item.checkedCities.length==item.child.length){
              item.checkAll=true;
            }else{
              item.checkAll=false;
            }
          },
     }
    复制代码
  • 相关阅读:
    SQL Azure (17) SQL Azure V12
    Microsoft Azure News(5) Azure新DV2系列虚拟机上线
    Azure Redis Cache (3) 在Windows 环境下使用Redis Benchmark
    Azure PowerShell (11) 使用自定义虚拟机镜像模板,创建Azure虚拟机并绑定公网IP(VIP)和内网IP(DIP)
    Windows Azure Virtual Machine (31) 迁移Azure虚拟机
    Windows Azure Web Site (16) Azure Web Site HTTPS
    Azure China (12) 域名备案问题
    一分钟快速入门openstack
    管理员必备的Linux系统监控工具
    Keepalived+Nginx实现高可用和双主节点负载均衡
  • 原文地址:https://www.cnblogs.com/twodog/p/12136859.html
Copyright © 2011-2022 走看看