编辑导语:穿梭框在网页端表单等处用到的较多,那么如何用中继器做一个简单的穿梭框呢?本文作者为我们做出了详细的解答。
![61eaa94a060c85942c4d54461b29168b.png](https://i-blog.csdnimg.cn/blog_migrate/46e7b9fcb0196da1091342ff7411a574.jpeg)
穿梭框的布局是两个区域:候选区和已选区,在候选区选中后单击右向箭头按钮,候选区中该元素删除、已选区中增加该元素。
使用中继器做穿梭框,避免了一次次在原型中添加、修改、删除的重复操作,只需要在中继器数据中做简单编辑即可。
第一步:页面布局
首先拖拽两个动态面板,从左到右分别命名为候选区和已选区,添加一个右向箭头,布局如图所示。
![6c8b603179b320cb176082e63913c3e3.png](https://i-blog.csdnimg.cn/blog_migrate/d24b410279f45c1314ff0cdce8181892.jpeg)
第二步:进入候选区动态面板,为其默认状态添加一个中继器,命名为候选中继器(注:此时操作在动态面板状态1里)。
第三步:为候选中继器添加数值。
首先删除其默认column 0的数值,将待写入数值在excel里生成后复制到中继器中,候选中继器数值如下图所示。
![fea719dc96dfb2d0ced06d04ce971b36.png](https://i-blog.csdnimg.cn/blog_migrate/8cae57f0154a0e768aa7703fda49ba75.jpeg)
第四步:进入候选中继器删除其默认矩形框。
在中继器操作页面拖入两个icon作为选择标识,命名为未选中和已选中,用来显示本选项选中状态(本文用到的是FontAwesome 5 元件库)。
![0c8bf0c9ff589c98b1093dd65541e03d.png](https://i-blog.csdnimg.cn/blog_migrate/48e5219ae85496f30012a20a37f7af70.jpeg)
默认情况下选项是未选中状态,因此将已选中标识和未选中标识布局在一起且将已选中标识隐藏起来。
当某选项处于未选中状态时,单击未选中标识切换到已选中标识,再次单击时由已选中切换到未选中,交互设计如图所示。
![00a8861a4a6bd84a6a04944f18ade5ee.png](https://i-blog.csdnimg.cn/blog_migrate/026890eb854ed1586c48c3c18ca0bf01.jpeg)
![534e1d562e687b57629229d1457e2d61.png](https://i-blog.csdnimg.cn/blog_migrate/e595a413e4f873018bec414880120e59.jpeg)
接下来,拖拽一个文本标签组件,命名为剧集,用来展示中继器中数据。
为了将中继器中数据展示在页面中,需要将页面的文本标签和中继器数据进行绑定,操作如下:单击中继器,设置文字于->勾选剧集->单击fx->插入变量或函数->选择Item.option,按如上操作设置交互用例即可绑定文本标签和候选中继器中的数据。
![3b630337698407ed3136cd80a53c9f4b.png](https://i-blog.csdnimg.cn/blog_migrate/60e155905f3e56de64e7cef6db55245e.jpeg)
完成以上几个步骤,预览一下,可以看到候选中继器的选项已经展示在左侧候选区里了,接下来需要做的是选中其中一个选项、单击穿梭按钮,右侧增加该选项、左侧删除该选项,下面我们通过逐个步骤来分解操作。
第五步:标记候选中继器中已选的选项
具体操作如下:中继器操作页面,新增全局变量NewVariable,为未选中按钮添加用例鼠标单击时标记行、设置全局变量NewVariable值为Item.option。
![e800d8997d36bdc426928bcd584a56d3.png](https://i-blog.csdnimg.cn/blog_migrate/49c3f98769b4ffa046a8c33390e672c9.jpeg)
相应地,已选中按钮添加用例鼠标单击时取消标记行、设置全局变量NewVariable值为空。
![e17b62082b41edc80b986243b04c909f.png](https://i-blog.csdnimg.cn/blog_migrate/2e8e7456709c1bd84d018986c3e87d95.jpeg)
第六步:将已标记选项在候选区中删除、选项值存入全局变量。
此项操作在主页面右向箭头,为其添加鼠标单击时交互操作:将已标记行从候选中继器中删除。
![b9001f6dbd2577455ab66f7922438492.png](https://i-blog.csdnimg.cn/blog_migrate/56ca189340f7b4f94a5ac41bde01bb76.jpeg)
经过这样的操作,就实现了单击向右箭头在左侧候选区中删除已选项的操作,那么如何将已选项的值传到右侧已选区域呢?
以刚建的全局变量为基础,这个操作是很容易实现的,那么首先来搭建已选区域的组件。
第七步:点击进入已选区动态面板,拖拽一个中继器,删除其默认矩形框和默认列column0,为其拖拽如图所示的组件,用来展示已选的选项,矩形命名为已选;中继器列名命名为chosen。
![e087165442ef307751febe73b81282bb.png](https://i-blog.csdnimg.cn/blog_migrate/4c020307812235d5803cdc6bc2961418.jpeg)
为了将候选区域中选择的内容显示在已选区域,需要经过两个步骤,分别是已选中继器中添加数据和已选中继器中数据的展示。
第八步:在主页面,为向右箭头新增一个鼠标单击时的交互,为已选中继器添加一行,详细操作如下:
![2776826aad2ada0391fe30ba9adb7779.png](https://i-blog.csdnimg.cn/blog_migrate/c40b1c2704f5f79b3e0637b236eddb89.jpeg)
![e1da7dca8b6014e9c7a4cc8f71758357.png](https://i-blog.csdnimg.cn/blog_migrate/d964b081d6de6a8a98425e1887294d63.jpeg)
![52fce8730ac4ba575db2d8d3435c5b5c.png](https://i-blog.csdnimg.cn/blog_migrate/a64b2e01fa4b4fda2544a6b18314a863.jpeg)
第九步:将已选中继器中数据在页面中显示出来。
在已选中继器操作页面,添加交互用例,设置矩形为中继器中第一列chosen的数值。
![9b4ad849f523444c3ce3b4a45dd81bd6.png](https://i-blog.csdnimg.cn/blog_migrate/cba18ca3f64efe7bf690a56ca4c91cf4.jpeg)
按照这样的步骤,通过中继器实现的穿梭框就成功啦!
当然,这个穿梭框是比较简陋的,没有设置太多的交互效果,也不可以实现一次性多数据的穿梭,仅仅使用中继器做了个基础穿梭框,更复杂的功能大家继续摸索吧!
本文由 @产品小白黑化中 原创首发于人人都是产品经理,未经许可,禁止转载
题图来自 Pexels,基于 CC0 协议