Element el-tag标签图文实例详解

目录
  • 1. 前言
  • 2. 基本用法
  • 3. 调整颜色
  • 4. 调整尺寸
  • 5. 调整主题
  • 6. 数据绑定
  • 7. 动态移除
  • 8. 动态新增
  • 9. 小结
  • 补充:Vue对Element中的el-tag添加@click事件无效

1. 前言

标签经常用来描述对象的一个、或者多个同类属性。

例如描述用户的爱好,描述用户拥有的角色。

el-tag提供了动态删除、新增标签的功能,所以非常适合使用在动态处理用户属性的场景。

2. 基本用法

代码如下:

基本用法<br>
    <el-tag>篮球</el-tag>

使用el-tag即可创建一个标签,效果如下:

3. 调整颜色

通过type属性可以调整标签颜色:

	调整颜色<br>
    <el-tag>默认色</el-tag> |
    <el-tag type="success">success色</el-tag> |
    <el-tag type="info">info色</el-tag> |
    <el-tag type="warning">warning色</el-tag> |
    <el-tag type="danger">dange色</el-tag>

效果如下:

4. 调整尺寸

通过size属性可以调整标签的尺寸大小:

	调整尺寸<br>
    <el-tag>默认</el-tag> |
    <el-tag size="medium">中等</el-tag> |
    <el-tag size="small">小型</el-tag> |
    <el-tag size="mini">超小</el-tag>

效果如下:

5. 调整主题

el-tag还支持不同风格的主题,通过effect属性即可调整,其中dark表示深色主题、light表示浅色主题、plain表示朴素主题:

	调整主题<br>
    <el-tag type="success">默认主题</el-tag> |
    <el-tag type="success" effect="dark">dark主题</el-tag> |
    <el-tag type="success" effect="light">light主题</el-tag> |
    <el-tag type="success" effect="plain">plain主题</el-tag>

效果如下:

6. 数据绑定

可以使用v-for动态绑定一个数组:

	数据绑定<br>
    <el-tag v-for="item in hobbies">{{item}}</el-tag>

数据区域定义如下:

  data() {
    return {
      hobbies: ['篮球', '足球', '排球'],
    }
  },

效果如下:

7. 动态移除

通过设置属性closable,可以在标签右侧显示一个删除图标,点击该图标后,会触发@close绑定的方法。

	动态移除<br>
    <el-tag v-for="item in hobbies" closable @close="handleClose(item)">{{item}}</el-tag>

方法代码:

	handleClose(item) {
      let _this = this;
      for (let i = 0; i < _this.hobbies.length; i++) {
        if (_this.hobbies[i] == item) {
          _this.hobbies.splice(i, 1);
          break;
        }
      }
    },

点击删除后,会从数组移除相应的元素,所以界面上对应的标签也会消失。

8. 动态新增

通过@click指定一个方法,点击方法后弹窗输入新标签项的内容,确定后将输入内容加入标签绑定的数组,就可以实现动态新增了:

	动态新增<br>
    <el-tag v-for="item in hobbies">{{item}}</el-tag> |
    <el-tag type="success" @click="btnAdd">新增</el-tag>

方法代码:

	btnAdd() {
      let _this = this;
      _this.$prompt('请输入您的爱好', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
      }).then(({ value }) => {
        _this.hobbies.push(value);
      })
    }

点击新增标签,即可弹窗,点击确定后,即可添加新标签:

9. 小结

标签在日常开发工作中,还是比较常用的。el-tag封装的非常简单利索,推荐!

补充:Vue对Element中的el-tag添加@click事件无效

在做评论模块的时候,想着对el-tag元素添加点击事件,发现无法触发,代码如下所示

<el-tag type="error" @click="onClick(scope.row.blog)">scope.row.blog.title}}</el-tag>

我们在点击el-tag标签的时候,无法触发其点击事件

解决方法

通过查阅资料发现官方给定了解答

也就是所,必须使用@click.native才能够触发点击行为,而对于button,直接使用@click即可,修改后的代码如下所示,能够正常完成点击事件了~

<el-tag type="error" @click.native="onClick(scope.row.blog)">scope.row.blog.title}}</el-tag>

到此这篇关于Element el-tag标签的文章就介绍到这了,更多相关Element el-tag标签内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • ElementUI Tag组件实现多标签生成的方法示例

    现在好多应用场景里会有一些需要给文章打标签等类似的操作,之前jquery用户是使用taginput来实现,使用VUE以后elementui有一个组件非常简单就是tag组件. <el-tag :key="tag" v-for="tag in dynamicTags" closable :disable-transitions="false" @close="handleClose(tag)"> {{tag}} <

  • vue+element-ui表格封装tag标签使用插槽

    我们知道有很多系统都要求表格中添加各种各样的tag,来标记一些属性.在element-ui中添加tag很简单,最重要的就是用到了vue的插槽slot这个特性.首先了解什么是插槽. 插槽 省去官方的复杂讲解和代码,插槽的意思简单来说,就是在子组件的某个地方留一个占位符,当父组件使用这个子组件的时候,可以自定义这个占位符所占地方呈现的样子,可能是一个标题,一个按钮,甚至一个表格,一个表单. 为什么要插槽呢?我们抽离组件的原因就是因为可重复的代码太多了,当使用可复用的组件时,大大减少了复制粘贴.设想有

  • Element el-tag标签图文实例详解

    目录 1. 前言 2. 基本用法 3. 调整颜色 4. 调整尺寸 5. 调整主题 6. 数据绑定 7. 动态移除 8. 动态新增 9. 小结 补充:Vue对Element中的el-tag添加@click事件无效 1. 前言 标签经常用来描述对象的一个.或者多个同类属性. 例如描述用户的爱好,描述用户拥有的角色. el-tag提供了动态删除.新增标签的功能,所以非常适合使用在动态处理用户属性的场景. 2. 基本用法 代码如下: 基本用法<br>    <el-tag>篮球</e

  • MyBatis动态SQL标签用法实例详解

    1.动态SQL片段 通过SQL片段达到代码复用 <!-- 动态条件分页查询 --> <sql id="sql_count"> select count(*) </sql> <sql id="sql_select"> select * </sql> <sql id="sql_where"> from icp <dynamic prepend="where&quo

  • JS创建Tag标签的方法详解

    本文实例讲述了JS创建Tag标签的方法.分享给大家供大家参考,具体如下: 一 . 创建标签其原理就是 创建一个节点: var x = document.createElement("TagName") 赋予节点样式: x.setAttribute("class",类名) 对节点进行赋值: x.innerHTML = 内容 //赋值 添加节点到父元素 要添加到的元素.appendChild(x); 二. 样式图: 三. 主要代码流程: HTML部分: <div

  • Python数据库sqlite3图文实例详解

    目录 前言 sqlite3数据库 1.需要的模块(只有一个) 2.模块的使用 2.1创建与数据库的连接 2.2创建游标 2.3创建 table 2.4插入数据 2.5查找数据 快乐的coding时间! 最后 前言 提到数据库,大家第一时间想到的可能是 sql 数据库,这种数据库非常好用,但是对于新手就不是很容易上手,需要熟悉一段时间才可以大概掌握.这种数据库在大型的项目开发过程中用到的地方不会很多,但是一些普通的项目还是很实用的,大大减少了代码量. sqlite3数据库 sqlite3 数据库是

  • jsp自定义标签用法实例详解

    本文实例讲述了jsp自定义标签用法.分享给大家供大家参考.具体如下: 在JSP中有一种机制,可以让你在JSP页面中插入与HTML类似的标记.本文介绍JSP定制标记的基本概念和构成,以及如何开发和应用JSP定制标记. 什么是标记 使用HTML语言我们可以这样去编辑我们的网页: <HTML> <HEAD> <TITLE> HELLO WORLD </TITLE> </HEAD> <BODY> HELLO WORLD </BODY&g

  • javaWeb自定义标签用法实例详解

    本文实例讲述了javaWeb自定义标签用法.分享给大家供大家参考,具体如下: 自定义标签创建 自定义标签主要用于移除Jsp页面中的Java代码. 移除jsp页面中的java代码,只需要完成两个步骤: - 编写一个继承TagSupport的Java类,并覆盖doStartTag方法,把jsp页面中的java代码写到doStartTag方法中. - 编写标签库描述符(tld)文件,在tld文件中对自定义标签进行描述. 完成以上操作,即可在JSP页面中导入和使用自定义标签. 标签处理类:HelloTa

  • ThinkPHP模板循环输出Volist标签用法实例详解

    本文实例讲述了ThinkPHP模板循环输出Volist标签用法.分享给大家供大家参考,具体如下: volist 标签用于在模板中循环输出数据集或者多维数组. volist 标签 在模块操作中,select() 方法返回的是一个二维数组,可以用 volist 直接输出: <volist name="list" id="vo"> 用 户 名:{$vo['username']}<br /> 电子邮件:{$vo['email']}<br /&g

  • C#创建、部署、调用WebService图文实例详解

    我们在以前介绍过关于C#创建.部署.调用WebService的教程,有兴趣的可以参阅:.NET C#创建WebService服务简单实例.本文是通过实例让大家更加详细的了解流程,一起来学习下. webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互. 概念性的东西就不说太多,下面开始创建一个简单的webservice的例子.这里我用的是Visual Studio 2015开发工具. 首先创建一个空的Web应用程序. 然后鼠标右键点击项目,选择 添加>新建项. 选择Web服务

  • ThinkPHP3.2.3框架邮件发送功能图文实例详解

    本文实例讲述了ThinkPHP3.2.3框架邮件发送功能.分享给大家供大家参考,具体如下: 背景 web 开发过程中,经常会用到邮件的发送功能,比如接收消费账单的提醒.亚马逊图书推荐的推送,或者网站不正常操作报警的邮件提示等. 下面是一个在ThinkPHP 3.2.3 框架下集成 PHPMailer 使用的邮件发送功能实现过程,仅供参考,谢谢... 一.前期准备 1).首先对 STMP 的知识稍作了解 STMP 简介 <百度百科> 2).开启邮箱 STMP 服务 以 163.com 邮箱为例,

  • 创建Django项目图文实例详解

    本文实例讲述了创建Django项目的方法.分享给大家供大家参考,具体如下: 创建Django项目 创建一个HelloDjango项目 GitHub地址:https://github.com/liangdongchang/HelloDjango.git 1.在linux命令窗口终端下 创建Django项目 django-admin.py startproject HelloDjango sudo apt install tree tree HelloDjango/ 2.在PyCharm中创建 fi

随机推荐