EleemntUI中el-table的formatter格式化字典显示的使用

摘要:
但在页面上,会显示用户名。用户名数据库中存储的czy是一个数字,即用户ID。在页面上,显示用户名。注意:首先,在页面<el table columnlabel=“id”align=“center”prop=“id”v-if=“false”/>Column){varname=“”;Column是一个列参数,而this.czyOption是一个基于用户id和名称的映射对象数组。
场景

某些类似于用字典(键值对)存储的属性,比如操作员这种

1代表用户id 数组库存储的也是用户id,但是在页面上展示的是用户姓名

数据库中存储czy是数字即用户的id

EleemntUI中el-table的formatter格式化字典显示的使用第1张

而要在页面上展示的是用户姓名

EleemntUI中el-table的formatter格式化字典显示的使用第2张

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

一般这种都是在后台写sql语句时使用关联语句关联查询用户表将用户姓名查询出来。

但是这只是用户id和姓名的键值对的映射。

如果是类似于状态等这样的键值对映射的话除了在后台进行关联表进行查询,还可以在前端使用el-table的

formatter进行格式化显示。

首先在页面上添加操作员此列

    <el-table v-loading="loading" :data="bcbdlsList" @selection-change="handleSelectionChange">
      <el-table-column label="id" align="center" prop="id" v-if="false" />
      <el-table-column label="操作员" align="center" prop="czy" :formatter="czyFormat" />

    </el-table>

然后给此列设置一个formatter

:formatter= "czyFormat"

在对应的格式化方法中

    // 操作员字典翻译
    czyFormat(row, column) {
      var name = "";
      this.czyOptions.forEach(function (item, index) {
        if (row.czy == item.userId) {
          name = item.userName;
        }
      });
      return name;
    },

上面的代码就是传递两个参数row是行参数,column是列参数

然后this.czyOption是一个根据用户id和姓名的一个映射的对象数组,遍历这个数组

根据row.czy获取当前行存储的用户id,即1或者2这种,在循环中判断如果与键值对中的用户id属性相等则获取用户的姓名并将其返回。

那么在哪里查询这个键值对映射的数组的数据?

首先声明这个字典数组

  data() {
    return {
      // 操作员字典
      czyOptions: [],

然后在created中请求后台数据获取用户列表,这样在页面加载完就能获取到用户对象的list

  created() {
    this.getUserList();
}

在获取数据的方法中

    /** 获取操作员数据 */
    getUserList() {
      //获取操作员数据
      listUser(this.user).then((response) => {
        this.czyOptions = response.rows;
      });
    },

将后台查询出来的数据赋值给上面的czyOptions 。

免责声明:文章转载自《EleemntUI中el-table的formatter格式化字典显示的使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇JNA调用.a静态库redhat6版本网卡绑定做bond下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Guava之缓存

一、使用场景   Guava Cache是本地缓存,当数据被重复查询多次,愿意耗费一些内存空间来减少查询的操作提高查询的速度,就可以使用Guava Cache。 二、使用方式 1.创建     LoadingCache是附带CacheLoader构建而成的缓存实现。创建自己的CacheLoader通常只需要简单地实现V load(K key) throw...

VUE三 vue-router(路由)详解

前端路由 根据不同的 url 地址展示不同的内容或页面,无需依赖服务器根据不同URL进行页面展示操作 优点 用户体验好,不需要每次都从服务器全部获取,快速展现给用户 缺点 使用浏览器的前进,后退键的时候会重新发送请求,没有合理地利用缓存 单页面无法记住之前滚动的位置,无法在前进,后退的时候记住滚动的位置 一、路由(以user为例) userList--...

linux笔记1(创建用户、安装gcc、安装五笔输入法)

linux笔记1(创建用户、安装gcc、安装五笔输入法) linux简说 内核:在计算机启动时载入基本内存,管理一些基本的输入输出,管理一些进程的初始化以及进程之间的调 试。控制硬件的运行。   Shell:系统的命令解释器,用户进程与kernel的桥梁作用 终端模拟器(Terminal Emulator):交互操作系统,并得到提示与反馈。   x...

如何防止同一同时用户多次登录

http://www.cnblogs.com/guojin705/archive/2008/01/26/1054199.html 这里指的单点,泛指在WEB服务端,一个账户同一时刻只能存在一个票据!大家开发中可能都碰到的一个问题,怎么使同一个用户,在同一时间内只允许登录一次。很多人都会想到在数据库中用一个标识字段,登录进去置1,退出置0,登录时判断这个字段...

【安全】CSRF、XSS攻击了解与防范

============================== 目录   一、了解CSRF攻击及防范   二、了解XSS攻击及防范 =============================== 一、了解CSRF攻击及防范 1、了解csrf   中文叫跨站请求伪造,指攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求。利用受害者在被攻击...

replace into 批量更新

1、.replace into 批量更新     $sql = replace into test_tbl (id,dr) values (1,'2'),(2,'3'),...(x,'y');   test_tbl 为表名 id 对应的主键或者判断的唯一值,最好是主键,这样数据库检索较快 dr 对应这的字段,有多个字段可以在后面加上 2、insert i...