首页 > 其他分享 >前端歌谣-第伍拾陆课-vue2-element组件封装el-button-groups(续)

前端歌谣-第伍拾陆课-vue2-element组件封装el-button-groups(续)

时间:2024-01-09 10:05:09浏览次数:32  
标签:el name color disabled 歌谣 groups 伍拾 type icon

前言

我是歌谣 今天继续给大家带来el-button-groups(项目的讲解

背景颜色属性color

:style="
        item.color ? { background: item.color, borderColor: item.color } : {}
      "
btns:[{
                //按钮名称
                name:"歌谣",
                //按钮类型
                type:"primary",
                //按钮是否隐藏
                hide:false,
                // icon颜色
                icon:"icon-back",
                //背景颜色
                color:"pink"
            },{
                name:"歌谣1",
                 type:"default",
                 icon:"icon-back"
            },{
                name:"歌谣2",
                type:"primary"
            },{
                name:"歌谣3",
                type:"default",
                 //背景颜色
                color:"pink"
            }],

运行结果

前端歌谣-第伍拾陆课-vue2-element组件封装el-button-groups(续)_ide

控制按钮是否禁用

:disabled="disabled(item)"
disabled(btn) {
      if (typeof btn.disabled === 'function') {
        return btn.disabled();
      }
      return btn.disabled;
    },

运行结果

前端歌谣-第伍拾陆课-vue2-element组件封装el-button-groups(续)_背景颜色_02

点击事件btnClick

@click="btnClick(item, $event)"
btnClick(btn, event) {
      console.log(btn,event,"btn event is ")
      if (typeof btn.click === 'function') {
        btn.click(event, btn);
      }
    }
btns:[{
                //按钮名称
                name:"歌谣",
                //按钮类型
                type:"primary",
                //按钮是否隐藏
                hide:false,
                // icon颜色
                // icon:"icon-back",
                //背景颜色
                color:"pink",
                 disabled:true
            },{
                name:"歌谣1",
                 type:"default",
                 icon:"icon-back"
            },{
                name:"歌谣2",
                type:"primary",
                disabled:true
            },{
                name:"歌谣3",
                type:"default",
                 //背景颜色
                color:"pink",
                 click: this.handleCreate
            }],

运行结果

前端歌谣-第伍拾陆课-vue2-element组件封装el-button-groups(续)_ico_03

前端歌谣-第伍拾陆课-vue2-element组件封装el-button-groups(续)_ide_04

下拉菜单max属性

btns:[{
                //按钮名称
                name:"歌谣",
                //按钮类型
                type:"primary",
                //按钮是否隐藏
                hide:false,
                // icon颜色
                // icon:"icon-back",
                //背景颜色
                color:"pink",
                 disabled:true
            },{
                name:"歌谣1",
                 type:"default",
                 icon:"icon-back"
            },{
                name:"歌谣2",
                type:"primary",
                disabled:true
            },{
                name:"歌谣3",
                type:"default",
                 //背景颜色
                color:"pink",
                 click: this.handleCreate
            },{
                name:"歌谣3",
                type:"default",
                 //背景颜色
                color:"pink",
                 click: this.handleCreate
            },{
                name:"歌谣3",
                type:"default",
                 //背景颜色
                color:"pink",
                 click: this.handleCreate
            }],
            max:3
<el-dropdown v-if="dropDownBtns.length" class="dropdown">
      <el-button size="mini" type="primary">
        更多
        <i class="el-icon-arrow-down el-icon--right"></i>
      </el-button>
      <el-dropdown-menu slot="dropdown">
        <el-dropdown-item
          v-for="(item, index) in dropDownBtns"
          @click.native="btnClick(item, $event)"
          :disabled="disabled(item)"
          :key="index"
          :icon="item.icon"
          >{{ item.name }}</el-dropdown-item
        >
      </el-dropdown-menu>
    </el-dropdown>
dropDownBtns() {
      const list = this.btns.filter(
        (item) =>
          !(item.permissions && this.permissions[item.permissions] !== true)
      );

      const end = list.length - this.max;
      if (end <= 0) {
        return [];
      }

      return list.slice(0, end + 1);
    }

运行结果

前端歌谣-第伍拾陆课-vue2-element组件封装el-button-groups(续)_ico_05

标签:el,name,color,disabled,歌谣,groups,伍拾,type,icon
From: https://blog.51cto.com/geyaoisnice/9156537

相关文章

  • Farewell to Pika, Embracing the Arrival of PikiwiDB in 2024
    今年(2023年) 3 月份于某接手项目时,OpenAtom 基金会 Pika 项目( https://github.com/OpenAtomFoundation/pika )对接人告诉我,OpenAtom 基金会旗下的多个项目都面临了一个共同问题:项目名称被第三方注册为商标。出于合规要求,余三月份重点工作之一就是给项目重新申请一个全新......
  • oban elixir 强大的任务处理框架
    obanelixir强大的任务处理框架,后端存储基于了sqlite或者pg包含的特性IsolatedQueuesQueueControlResilientQueuesJobCancelingTriggeredExecutionUniqueJobsScheduledJobsPeriodic(CRON)JobsJobPriorityHistoricMetricsNodeMetricsGracefulShutdownTelemetryInteg......
  • shell基础
    如何编写并执行一个Shell脚本文件?[root@sunday-testshell-script]#catHelloWorld.sh#!/usr/bin/bash//是一个标记,告诉系统执行这个文件需要的解释器#thislineisacomment1//“#”号开头的行代表注释echo"HelloWorld"//指令要使脚本可执行:ch......
  • elixir erlang 简单调用学习
    实际上基于elixir的mix进行erlang以及elixir的互调用开发处理是很方便的,mix直接就包含了构建erlang代码同时对于代码的互调用,只要使用符合语言格式要求就行了,以下是一个简单的互调用学习项目准备项目结构 ├──README.md├──lib│├──a.ex│└──er_app......
  • elixir mix observer 工具的使用
    默认elixirmix没有添加observer工具的依赖直接运行会提示找不到方法解决方法添加几个额外的依赖主要是observer,:wx,:runtime_tools这几个 defapplicationdo[extra_applications:[:logger,:observer,:wx,:runtime_tools]]end说明注意可能不同版本elixi......
  • elixir config 简单说明
    elixir的config模块,实际上就是标准的方法,只是mix项目中在使用的时候使用了dsl模式的,没有使用包含括号的模式调用给人一种似乎觉得有点怪的调用模式参考代码只说明config方法,实际上Config模块还包含了其他方法mix中的调用 importConfigconfig:ecto_demo,Dalong.App,......
  • elixir mix 自定义任务
    elixir的mix比较灵活,同时也比较强大,很多时候我们可以自己定义一个任务,方便运行以及构建,不少三方框架会提供一些方便的cli,一般也会使用此方法比如ectoorm框架,以下是一个简单的自定义task学习参考开发目录位置这个实际上都f放那里可以,只是有一个简单的约定,建议放到lib/mix/......
  • elixir 模块名一些参考资料
    elixir的模块名实际上是一个atom类型的数据,以下是一些参考资料参考使用比如一个mixsup项目defmoduleEctoDemo.ApplicationdouseApplication@impltruedefstart(_type,_args)dochildren=[]#此处name实际上就是使用了模块名格式的,因为是......
  • elixir defdelegate 使用
    delegate模式,在不少语言都支持,有些是隐式的(一些早期语言),有些是显式的(新语言,kotlin,swift等)elixir也支持delegate处理,还是比较方便的,以下是一个简单的使用定义原始方法default.ex defmoduleDefaultdodeflogin(name,password)doIO.puts"fromDefault.login"......
  • absinthe elixir 的graphql 框架简单试用
    absintheelixir的graphql框架包含的特性graphql草案的完整实现插件化设计异步字段解析以及批量解析,同时支持插件化的解析支持安全包含了基于GraphiQL的playground项目测试基于了phoenix框架创建phoenix项目mixphx.newabsinthe_phx添加sqliteecto依赖默认phoenix使用了......