Axure教程:如何实现Axure中继器数组跨页联动?

LJ云
7 评论 12477 浏览 23 收藏 9 分钟
🔗 产品经理专业技能指的是:需求分析、数据分析、竞品分析、商业分析、行业分析、产品设计、版本管理、用户调研等。

本文将介绍在axure中,如何利用全局变量对一个中继器里多个参数进行保存和赋值。从而实现翻页后,数据不被还原、能在不同页面联动,模拟数据库存在的效果。

众所周知,axure只能利用全局变量来实现页面之间的数据传递,当只有少量参数需要跨页时,我们设置相应的全局变量即可。但如果数据较多时,就不适合为每个参数都设置其相应变量。现在,我们可以只用一个变量来实现。

思路

  1. 设置一个全局变量,用诸如1!2!3!来标记参数位置
  2. 中继器载入时,从变量中截取1!到2!之间,2!到3!之间的参数置于合适的地方,每个数组分别放在{}里面,如两组参数,即{1!a2!b!c3!d}{1!e2!f!g3!h}
  3. 第一组参数参数赋值完成后,删除{1!a2!b!c3!d},重复步骤2,使用第二组参数{1!e2!f!g3!h}进行赋值
  4. 增、删、改后,提取整个中继器对象的文本值,过滤无效参数,还原成初始变量的格式。再存放回变量中。

实现过程(一):利用一个全局变量,对中继器赋值并设置文本

(1)设置全局变量

m  默认值可以为空,用于数据临时存放。

bmqhz  用于存放整个中继器的数据。默认值可以为空,我这里设置了两个数组:

{1!海康NVR2!192.168.10.203!5544!类型一5!admin6!系统默认编码器01}1

{1!宇视NVR2!192.168.88.203!5544!类型二5!admin6!系统默认编码器02}2

如图,其对应的参数名称分别是“编码器名称、编码器ip、编码器端口、编码器类型、用户名、描述”(密码用圆号代替,所以不用存变量)。

(2)中继器数据赋值

1)中继器载入时:把变量bmqhz的数据复制到变量m,再从m截取第一个数组的参数,存到中继器相应位置。

2)每项加载时,设置文字为富文本,把标记符号设置为透明字体,字体根据实际情况设置小点就行了。

3)第一个数组设置成文本内容后,把它从变量m删除,再触发中继器载入时的交互,使用第二个数组进行赋值。

4)看看效果

实现过程(二):新增数据的保存

(1)以“名称”为例,点击“确认”保存时,把文本值放到中继器,要在前面加 1!

(2)把中继器的数据保存到变量中去

设置变量bmqhz为 [[LVAR1.text.replace(‘\n’,”).replace(‘1!’,'{1!’).replace(‘*’,”).replace(‘’,”)]] ,其中LVAR1是中继器元件。(可以先把中继器对象的文本设置到矩形作为参考,再决定如何过滤,如下图)

(3)编辑和删除同理。如下图,编辑后,确认按钮的交互设置:把参数从文本框取出来,加上标记后更新到中继器。

实现过程(三):页面联动

页面联动,在另一页面中展示设备名称,对其的删除操作,影响到上一页面。

(1)展示系统中的编码器设备:在新的页面中,参考“实现过程(一)”中继器的赋值方法即可,这里只显示名称。

(2)删除编码器设备:点击删除按钮时,在设备名称前面加上{  ,再保存到变量m中,如上图“海康NVR2”保存后,m = {1!海康NVR2 。在确认删除时,在变量bmqhz中删除“海康NVR2”对应的数组,触发中继器载入时交互即可。

这个函数,我们来拆解一下:

拿默认变量为例(实际上没换行符,下面换行是为了便于说明):

bmqhz =

{1!海康NVR2!192.168.10.203!5544!类型一5!admin6!系统默认编码器01}1

{1!宇视NVR2!192.168.88.203!5544!类型二5!admin6!系统默认编码器02}2

假设我们删除的是第二个编码器数据,那么m存的数据就是 {1!宇视NVR ,我们拿到这个数据后,需要从变量中把第二个数组删除。

  1. 获取 “ {1!宇视NVR2 ” 的位置x:bmqhz.indexOf(m,0);
  2. 获取从“ {1!宇视NVR2 ” 开始的第一个 “ } ”的位置,此位置再加2(为了覆盖后面的序列号),得到y:bmqhz.indexOf(‘}’,bmqhz.indexOf(m,0))+2;
  3. 截取“宇视NVR2”所在数组的字符: bmqhz.substring(x,y);
  4. 把“宇视NVR2”所在数组的字符从变量中删除:bmqhz.replace(‘bmqhz.substring(x,y)’,”) ;再把步骤1和2中的x、y代入进来。

最后,我们来操作一下

  1. 在“编码器管理”页面添加设备,或者修改、删除设备;
  2. 切换到“展示编码器”页面,我们可以看到设备名称列表,是和管理页面一致的;
  3. 在“展示编码器”页面删除设备,再切换到“编码器管理”页,设备一致;
  4. 来回切换数据不丢失。

原型预览地址:http://www.wulihub.com.cn/go/WvwR1Q/start.html

源文件下载链接:https://pan.baidu.com/s/18LXwvyI9nD6kWezUwM6ueg

提取码:vfap

 

本文由 @LJ云 原创发布于人人都是产品经理。未经许可,禁止转载

题图来自Unsplash,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 您好,我想问一下,如果在中继器最后再添加一列,然后让变量最后的序列号 跑到我添加的这一列后面,要改哪些东西呢

    来自云南 回复
  2. 不得不说,思路是真牛,看了3天,终于看懂了

    来自上海 回复
  3. 好酷

    来自福建 回复
  4. 非常高级、有用,炫酷。感谢楼主的无私分享,已经从百度云下载下来了,学到了很多东西!
    而且层面比较深,用了很多开发技术的知识,对于不会开发的人可以直接用!

    来自广东 回复
    1. 感谢你的留言和点赞。

      回复
    2. 您好,我想问一下,如果在中继器最后再添加一列,然后让变量最后的序列号 跑到我添加的这一列后面,要改哪些东西呢

      来自云南 回复
    3. 为什么点完“新增”之后,变量里的序列号全没了

      来自云南 回复
专题
13555人已学习13篇文章
本专题的文章分享了搜索策略产品经理必读系列。
专题
15918人已学习15篇文章
汽车座舱的智能化,本质上是通过硬件+软件的手段,让汽车座舱具备人类“智能”的能力,使人与车直接协作更加安全高效。本专题的文章分享了智能座舱的产品模块解读。
专题
35669人已学习18篇文章
借用别人家的经典案例,来扒一扒社交电商。
专题
14077人已学习12篇文章
一张逻辑清晰、层次明确的产品架构图,能够给观者讲述一个产品的业务流程、功能框架和设计思路,也是一个产品必不可少的可视化工具。
专题
13192人已学习14篇文章
在项目完结时,我们经常需要进行项目复盘。那么一个好的项目复盘是怎样的?
专题
14146人已学习14篇文章
在生活中,我们总是能被各种各样的事情挑起不同的情绪,如果将情绪映射到设计/运营中呢?本专题的文章分享了如何将“情绪”映射到设计/运营中。