一、变量(Variables)
1. 变量类型
- 全局变量:整个原型中可访问,用于跨页面的数据传递。
- 局部变量:仅在当前交互动作中临时使用(如获取组件属性)。
2. 操作变量
- 创建全局变量:
- 点击顶部菜单栏 Project → Global Variables,添加变量并设置默认值。
- 修改变量值:
- 在交互事件中,选择动作 Set Variable/Widget Value,选择目标变量并赋值。
- 示例:用户提交表单时,将输入框文本存入变量 UserName。
- 读取变量值:
- 在文本组件或条件逻辑中,通过 [[变量名]] 引用变量值。
- 示例:在文本标签中显示 欢迎 [[UserName]]!。
二、表达式(Expressions)
表达式用于动态计算值,结合变量、函数和运算符实现逻辑。
1. 基本语法
- 用双中括号包裹表达式:[[表达式]]
- 示例:[[A + B]](计算变量 A 和 B 的和)。
2. 运算符
- 算术运算符:+, -, *, /
- 比较运算符:==, !=, >, <, >=, <=
- 逻辑运算符:&&(与), ||(或), !(非)
3. 使用场景
- 动态文本:[[PageName]](显示当前页面名称)。
- 条件判断:在交互条件中设置 [[TotalPrice > 100]] 触发特定动作。
三、函数(Functions)
Axure 内置多种函数,按用途分类如下:
1. 元件属性函数
- [[This.text]]:获取当前元件的文本。
- [[Target.text]]:获取目标元件的文本(需配合局部变量)。
2. 数学函数
- Math.abs(N):绝对值。
- Math.pow(N, 2):计算平方。
- Math.random():生成 0~1 的随机数。
3. 字符串函数
- [[变量名.length]]:获取字符串长度。
- [[变量名.toUpperCase()]]:转换为大写。
- [[变量名.substr(0,5)]]:截取前5个字符。
4. 日期函数
- Now.getDate():当前日期。
- Now.getHours():当前小时数。
5. 页面函数
- [[PageName]]:当前页面名称。
- [[Page.url]]:获取页面 URL。
四、实际应用案例
1. 动态显示计算结果
- 场景:输入单价和数量,自动计算总价。
- 步骤:
- 创建变量 Price 和 Quantity。
- 在总价文本框中设置表达式:[[Price * Quantity]]。
2. 条件判断跳转
- 场景:密码长度≥6时允许提交。
- 步骤:
- 为输入框设置文本改变事件,将值存入变量 Password。
- 提交按钮的点击事件中添加条件:[[Password.length >= 6]],满足时跳转页面。
3. 随机抽奖
- 场景:点击按钮显示随机数字。
- 步骤:
- 创建变量 RandomNum。
- 按钮点击时设置变量值:[[Math.floor(Math.random()*100)]]。
- 显示 [[RandomNum]]。
五、注意事项
- 变量作用域:全局变量跨页面有效,局部变量仅在当前交互中生效。
- 函数大小写敏感:如 Now.getDate() 需严格按格式书写。
- 调试技巧:用 console.log([[变量名]]) 输出日志(需浏览器控制台查看)。