使用Axure RP原型设计实践07,注册判断
本篇实现注册页的一些功能。本项目是通过用户名和电子邮件进行注册的。
在本篇之前,在"使用Axure RP原型设计实践03,制作一个登录界面的原型"中已经对注册页做了基本的处理。
打开注册页,把登录页的提示动态面板放到当前注册页面提示的正下方,对齐。
提示的时候,有些提示只有一行,比如用户名没填,有些提示有2行,比如用户名和邮箱都没有填。可以把2个状态放到同一个动态面板中,给不同的状态命名,并让面板中部件的名称不重复。
先让动态面板隐藏,当点击注册的时候再显示。
给注册按钮的OnClick事件编写用例。

如何让点击注册按钮的时候先使用动态面板中的某个状态呢?
修改注册按钮OnClick事件的用例。

以上,尝试了显示动态面板,以及显示动态面板中的某一个状态。接下来先整理一下注册的思路。

以上,一个提示的有7个,二个提示的有8个,接下来就根据这个思维导图有针对性地编写事件用例。
1、用户名和邮箱都为空
--错误:请填写用户名
--错误:请填写邮件地址
添加一个用例,设置如下:

2、用户名为空,邮件输入
--邮件已注册(用1表示邮件已注册)
--错误:请填写用户名
--错误:电子邮件已被注册请换一个
添加一个用例,设置如下:

3、用户名为空,邮件输入
--邮件无效(用2表示邮件无效)
--错误:请填写用户名
--错误:电子邮件地址不正确

4、用户名为空,邮件输入
--邮件未注册
--错误:请填写用户名

现在要思考一个问题:在我们的思维导图中,一共有15种情况,现在只做了4种情况,代码已经比较多了。
是否有更好的办法呢?
通过思维导图,我们发现错误提示只有那么几种情况,是否可以以此为切入点呢?
复制出一个当前的注册页,删除所有的登录按钮的OnClick事件的用例,重新编写如下:

以上,username为2表示用户名格式错误,为1表示用户名已被注册。email为1表示邮件已被注册,为2表示邮件格式错误。
总结:
● 当情况比较多的时候,可以考虑使用思维导图帮助设计
● 当动作中有重复的部分,就可以考虑提取重复的部分再次抽象
参考资料:http://www.iaxure.com/
使用Axure RP原型设计实践07,注册判断的更多相关文章
- 使用Axure RP原型设计实践06,登录验证
登录验证主要功能包括: ● 用户名错误,提示无效用户名,用户名和密码文本框清空● 用户名存在,密码错误,提示密码错误,密码清空,焦点进入密码框● 用户名和密码都正确,验证通过 本篇接着"使用 ...
- 使用Axure RP原型设计实践01,使用概述
首先认识Axure RP Pro 7.0软件的默认界面布局.最上面的是工具栏区域,左侧上方的是网站地图区域(sitemap),左侧中部的是部件区域(Widgets),左侧下方的是模板区域(Master ...
- 使用Axure RP原型设计实践03,制作一个登录界面的原型
本篇体验做一个登录界面的原型. 登录页 首先在Page Style里为页面设置背景色. 如果想在页面中加图片,就把Image部件拖入页面,并设置x和y轴.双击页面中的Image部件可以导入图片.在Im ...
- 使用Axure RP原型设计实践05,了解公式
本篇体验公式的使用,一般出现值的时候就可以使用公式,公式可以使用全局变量也可以使用局部变量,在Axure中使用公司有一定的语法. 先创建2个全局变量. 向页面中拖入Rectangle部件,给它的OnC ...
- 使用Axure RP原型设计实践04,了解全局变量
变量是一个可以变的数,可以看作是一个数据的容器.变量有2个操作,一个是读,一个是写.Axure的全局变量是指任何时候都可以对这个变量进行读写操作. 点击工具栏Project下的Global Varia ...
- 使用Axure RP原型设计实践02,自定义部件以及熟悉与部件相关面板
本篇体验在Axure中自定义部件,并熟悉Widget Interations and Notes面板,Widget Properties and Style面板,Widget Manager面板. 在 ...
- 使用Axure RP原型设计实践08,制作圆角文本框
本篇体验做一个简单圆角文本框,做到3个效果: 1.初始状态,圆角文本框有淡淡的背景色,边框的颜色为浅灰色2.点击圆角文本框,让其获取焦点,边框变成蓝色,背景色变成白色3.圆角文本框失去焦点,边框变成红 ...
- 学习Axure RP原型设计
1 概述 原型设计是应用开发设计的第一要素.好的原型设计不仅可以起到沟通的作用,而且对客户而言应用程序拥有更直观的体现.原型设计通过内容和结构展示以及界面布局编排,实现在开发前期用户与产品进行交互.提 ...
- 用Axure进行原型设计
用Axure进行原型设计 看这个视频 http://www.iqiyi.com/playlist409963402.html
随机推荐
- 【ARTS】01_02_左耳听风-20181119~1125
Algorithm 做一个 leetcode 的算法题 Unique Email Addresses https://leetcode.com/problems/unique-email-addres ...
- Mini Twitter
Implement a simple twitter. Support the following method: postTweet(user_id, tweet_text). Post a twe ...
- 解决windows10 里vs2017 直接开始执行提示“此任务要求应用程序有提升的权限”1.
1.打开vs的安装路径,我的是 C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\ ,找到 VSLauncher.exe 右击该文 ...
- jquery easyui:tab自动加载第一个tab内容
$('#resourceTabs').tabs('unselect', 0);$('#resourceTabs').tabs('select', 0);
- OS X 10.11:如何完全停用Time Machine。
家里的2010年21.5英寸iMac越来越慢,用HFS+分区的1.5TB外置硬盘进行备份时,100G数据经常两三个小时还不能备份完.Time Machine虽然方便,但效率太低,不得不停用. 1. 要 ...
- Android 5.0 行为变更
Android 5.0 除了提供诸多新特性和功能外,还对系统和 API 行为做出了各种变更.本文重点介绍您应该了解并在开发应用时加以考虑的一些主要变更. 如果您之前发布过 Android 应用,请注意 ...
- poj 2524 求连通分量(并查集模板题)
求连通分量 Sample Input 10 91 21 31 41 51 61 71 81 91 1010 42 34 54 85 80 0Sample Output Case 1: 1Case 2: ...
- Django RESTful Web Services, 此书学DRF不错
全名为<Django RESTful Web Services: The easiest way to build Python RESTful APIs and web services wi ...
- 对C转换说明符的误解以及关于数组的一些知识
事实上,scanf()函数中%c并非是用来输入单个字符的,而是用来输入一组字符的. 例如: ]; scanf("%3c",a); 其中“3”规定了输入数据的宽度,当然宽度为“1”的 ...
- # Java反射2——获取实体所有属性和方法,并对属性赋值
1.一个普通的实体Person: private int id; private String name; private Date createdTime; ... //其它字段 // get se ...