Axure中继器(标记/删除)重复行

大家都用过Excel的数据筛选功能吧?点击筛选器图标,下拉列表中会显示出该列的全部值,相同的值只会出现一次,明显是执行了去重操作。如果想在Axure里实现这种效果应该怎么做呢?

  • 数据重复是指在数据集中存在相同的数据记录,数据重复的原因有很多,比如人为操作失误、多点采集、数据传输错误、备份还原错误等。
  • 数据去重是指在数据处理中,通过比较不同记录之间的特定字段,将相同或类似的记录保留一份,并删除其他副本的过程。

一、传统办法

建一个全局变量,再拟定一个间隔符号(比如:逗号、斜杠、竖线等)。在中继器的“每项加载时”判断该全局变量是否包含当前行字段值,如果包含字段值,说明是数据重复,标记或者删除。如果不包含字段值,把对应字段的值与间隔符号一起拼接到全局变量尾部。

这种方法是可以应付大多数情况,但不够灵活,比如要求保留时间戳最小/最大的,或者需要同时比较多个列时就捉襟见肘了。

二、先决知识

你对中继器监听器了解多少?如果不明白监听器是什么东西,可以先阅读一下《Axure监听之中继器监听》这篇文章。最好能够清楚为什么要用监听器、什么时候用、以及怎么用。

这个知识点是中继器进阶应用的基础,很多以往非常难以实现的交互通过监听器都可轻松实现。

三、准备工作

先准备好以下元件:

  • 一个中继器,数据塞入部分重复数据
  • 默认的矩形,用来显示数据,同时定义一个“选中样式”
  • 一个热区(取名:重复行监听)
  • 一个标记重复行按钮
  • 一个删除重复行按钮

四、重复行监听

交互代码如下:

[[TargetItem.Column0 == Item.Column0 && TargetItem.index > Item.index]]如果需要同时比较多个字段,就继续在后面多加条件即可。

五、标记重复行

交互非常简单:

六、删除重复行

前面已经知道怎样标记重复行了,先触发标记重复行监听,再删除标记行就行了!

自己决定是一步搞定还是分步操作。

七、演示地址

https://usrsky.axshare.com/#id=fc90a6&g=1

八、总结

利用中继器监听可以非常轻松的标记出或删除掉重复行。知道为什么我一直强调务必要学会中继器监听器的原因了吧?

本文作者 @Jorkin

版权声明

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部