数据过滤器使用法则

数据过滤器使用法则

相信很多企业版用户已经发现编辑器出现了一个新功能「数据过滤器」,然而打开这个功能之后,又不知道怎么用。今天我们就来简单入门一下这个新功能。

能干什么

「数据过滤器」可以算是「字段映射」的升级版。一定有很多人已经用了「字段映射」这个功能用来满足不同组件之间的数据源复用。

映射前:

[
    {
        "sk": 1
    }
]

映射后:

[
    {
        "sk": 1,
        "value": 1
    }
]

那么问题来了,如果是下面这种数据格式,我该如何接入到组件上呢?

{
  "data": {
    "sk": 1
  }
}

这种情况下,就轮到「数据过滤器」出手了。

怎么用

首先过滤器使用的语法是 javascript,一种非常简单易上手的语言,可以参考 http://www.w3school.com.cn/js/pro_js_syntax.asp 学习。如果实在学不会,请求教公司里的前端哥哥、前端弟弟、前端姐姐、前端妹妹们。

回到「数据过滤器」的功能上。假设你已经学会了javascript语言,我们的每个过滤器是一个 function,接口定义如下,框架只传入一个变量 data,过滤器需要返回经过处理后的 data:

function (data) {
  // do something...
  return data;
}

你只需要书写函数体即可,比如我现在要把上一段的问题解决,我只需将 data 的数据格式由 Object 转换为 Array ,并且将 sk 字段的数值放到 value 字段上即可:

data.data.value = data.data.sk;
return [data.data];

或者

return [{
  "value": data.data.sk
}]

上面这两种写法,均可以达到同样的效果。

注意点:(敲黑板)

「数据过滤器」中限制了全局变量的访问,目前仅支持 Date, String, Array, Math, Object, RegExp, Boolean, parseInt, parseFloat, JSON

叠加使用

当我们将过滤器的场景标准化之后,就可以建立多个通用的过滤器,通过多个叠加方式,变成数据该有的样子。

比如我要实现一个随机数效果,并且所有数据放大100倍。

原始数据为

[
  {
    "name": "",
    "value": 232425,
    "y": 0.891111
  }
]

我先新建一个名称为随机数的过滤器

data[0].value = Math.random(0, 1);
return data;

再新建一个名称为*100的过滤器:

data.forEach(function (val,index) {
  val.y = val.y * 100;
  val.value = val.value * 100;
});
return data;

添加完成之后的效果如下图:

注意点:(敲黑板)

多个过滤器叠加时,数据流动方向为从左到右,即先经过随机数处理之后的数据再传到*100进行处理。

数据过滤器的功能就先介绍到这里了,下期再见

时间: 2024-08-24 14:08:59

数据过滤器使用法则的相关文章

数据防泄密法则:杜绝信息安全七宗罪

本文讲的是数据防泄密法则:杜绝信息安全七宗罪,有效的信息安全并不仅仅是使用合适的技术.它还关系到员工是否意识到每天面临的威胁.安全供应商Trustwave发布了七个导致数据暴露的重要事项. 根据全球300多家安全机构的调查显示,在遭遇过数据泄露的公司中有87%的公司没有开发出特定的安全策略,包括安全意识培训程序.巧合的是,现在的企业中平均每年有14.4起意外事故是因为员工无意识的行为导致数据丢失.或许,我们不应该感到惊讶,因为只有32%的员工称自己曾经接受过公司的安全策略培训. 干脆,让我们来看

详解ABP框架中的数据过滤器与数据传输对象的使用_基础应用

数据过滤器(Data filters)在数据库开发中,我们一般会运用软删除(soft-delete)模式,即不直接从数据库删除数据,而是标记这笔数据为已删除.因此,如果实体被软删除了,那么它就应该不会在应用程序中被检索到.要达到这种效果,我们需要在每次检索实体的查询语句上添加SQL的Where条件IsDeleted = false.这是个乏味的工作,但它是个容易被忘掉的事情.因此,我们应该要有个自动的机制来处理这些问题. ABP提供数据过滤器(Data filters),它使用自动化的,基于规则

数据备份“3-2-1-0”法则

现在社会中,数据管理在不停地演变. 现代数据中心基本都是建立在虚拟化.现代存储解决方案及云服务之上.面对极速增长的数据,如何做好数据管理是企业维持业务正常运作的关键. 如今,所有企业都以"零宕机"为目标.全球化进程让企业的业务周期不再局限于每星期五天,每天八小时.以Veeam的方式说,现代业务已发展成"Always-On Business(不间断的业务)".然后,随着员工流动及客户需求的增加,随时可存取各种产品及服务已成为必然,而大众对停机及数据丢失的容忍程度也大为

【原创】.NET读写Excel工具Spire.Xls使用(4)对数据操作与控制

              本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html .NET读写Excel工具Spire.Xls使用文章目录:http://www.cnblogs.com/asxinyu/p/4374032.html Spire.Office for .NET是E-iceblue开发的一种企业级.NET Office编辑的软件集合,包括Spire.Doc,Spire XLS,Spire.PDF,Spire.BarCo

大数据如何改变金融?

◆ ◆ ◆ 序言 当今社会,庞大的数据及高端复杂的科学技术正在持续改变着产业的经营方式和竞争方式.每一天,世界上都有两百五十万的三次方的字节数据产生出来,这直接导致了仅在过去两年时间内就创建出世界上90%的数据.这种通常所谓的"大数据"的快速增长和存储,也创造出了很多机会:比如收集数据,处理数据,结构化和非结构化的数据分析等等. 在遵循大数据的3 V法则的基础上(后文会有详细介绍),各类组织通过对已知数据加以分析,帮助自己的公司作出更好的商业决策.这些已经采用大数据技术的行业包括:金融

《数据分析实战:基于EXCEL和SPSS系列工具的实践》一3.4.3 数据抽样

3.4.3 数据抽样 如果数据量比较大,也可以采用数据抽样的方法,SPSS和Modeler都有专门做数据抽样的方法,在EXCEL中也可以实现,比如,可以用随机数函数进行抽样. 以下以SPSS和EXCEL为例来说明如何做数据抽样. 在SPSS中打开数据文件,在"数据"主标签中选择"选择个案",如图3-37所示. 接图3-37,点击"选择个案",如图3-38所示. 在图3-38中,选择"随机个案样本",如图3-39所示. 图3-3

《数据分析实战 基于EXCEL和SPSS系列工具的实践》一3.4 数据量太大了怎么办

3.4 数据量太大了怎么办 早期做培训的时候,很少有学员来问我数据量的事情,因为大家的数据量都比较小,这几年来不同了,经常有学员来问我:老师,作者的数据有300多万,怎么办?还有学员说,我们要做客户画像,数据量有1000多万,我们平时都是放在MySQL里面做的. 数据量太大了,怎么办?EXCEL的一个工作表只能存放1048576行数据,也就是104万多一点,数据多了如何处理呢? 3.4.1 放到数据库中处理 EXCEL只是一个办公软件,在处理大数据量方面,它远远没有专业的数据库给力.专业数据库能

elasticsearch 搜索-elasticsearch 过滤器使用问题求大神

问题描述 elasticsearch 过滤器使用问题求大神 5C 通过 界面可以看到数据 过滤器写法: public void search04() { FilterBuilder filter =FilterBuilders.prefixFilter(""name""张三""); SearchResponse res = client.prepareSearch(""test4"").setTypes(&

为您企业找到合适的大数据设备

企业应慎重选择一款大数据设备,以便确保其对于企业业务的价值. 似乎选择一款单一的.优化架构的方法来处理大数据是有一定意义的. 一款专门由硬件和软件组合所搭建起来的设备显然应该要比手工胡乱拼凑起来的设备要好很多,不是吗? 上述这一逻辑已然在数据管理人员的圈子中得到了广泛的认同. 例如,甲骨文已经收购了Exadata公司,并创建了一款被称为甲骨文大数据设备的系统.该结合了Sun的硬件与各种不同的软件方法,以便在一款设备中处理不同类型的数据. 而IBM公司在收购了Netezza公司之后,也采取了类似的