• 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;
            }
          },
     }
    复制代码
  • 相关阅读:
    探索MySql.Data.dll
    【翻译】为了3D游戏粉丝的[(超级)街头霸王4]图形讲座(前篇)
    《火影忍者:究级风暴》渲染技术究极解析!
    宅男把妹乐游《梦幻俱乐部》技术全剖析!
    CEDEC2010《偶像大师2》渲染动画技术公开第二弹!
    NBGI 2011年大作《偶像大师2》技术大揭秘!
    剑风2012年1月要出剧场版了,哇哈哈~~~~~
    《王牌空战:突袭地平线》(ACEAH)制作流程全放送!
    极具创意的3D推箱子游戏《凯瑟琳》制作流程全公开!
    SQUARE ENIX巨作《最终幻想13》制作流程全放送!(上)
  • 原文地址:https://www.cnblogs.com/twodog/p/12136860.html
Copyright © 2020-2023  润新知