用户工具

站点工具


api:qn

问卷问题

用简单的语法规则,用户可配置问题模板,后端自动转换为js并执行自定义json数据,生成动态内容。接口文档

语法规则

  1. {变量}:变量结构,变量为空时原样输出,示例1
  2. (条件)[内容]:条件结构,支持and、or、分组括号,示例2-示例5
  3. <{列表}>[内容]:循环结构,{列表}为空时为顶层循环,示例6-10
  4. [内容]支持嵌套问题语法,对于循环结构只能顶层循环嵌套列表循环,示例4、示例7
  5. (条件)可以独立配置,用于表示问题的带出条件,执行结果为true或false,示例2-示例5
  • 特殊规则1:<>[内容],这是顶层循环,支持内嵌列表循环,示例8
  • 特殊规则2:支持[、-]去掉循环之后的最后一个顿号、,示例6-10
  • 特殊规则3:支持{列表}!=EMPTY,判断列表非空,示例9、示例10
  • 特殊规则4:支持转义字符\(非条件)、\[提示语]

语法示例

自定义json数据:接口文档

[{姓名:'张三',老婆:[{昵称:'大房'},{昵称:'二房'},{昵称:'三房'}]},{姓名:'李四',老婆:[{昵称:'大房'},{昵称:'二房'}]},{姓名:'王五',老婆:[]}]

示例1:简单问题使用变量就够了,没有循环语法时仅使用第一个json对象

你好:{姓名} ==》 你好:张三

示例2条件满足时,带出[内容],条件2

你好:({姓名}=张三)[张先生] ==》 你好:张先生

示例3:等号可以判断多个值,条件3

你好:({姓名}=张三、李四)[兄弟] ==》 你好:兄弟

示例4:条件的[内容]还可以嵌套条件,条件4

你好:({姓名}=张三、李四)[兄弟({姓名}=张三)[,老地方见!]] ==》 你好:兄弟,老地方见!

示例5:条件支持and、or,注意括号分组,条件5

你好:(({姓名}=张三 or {姓名}=李四) and {姓名}!=王五)[{姓名}先生] ==》 你好:张三先生

示例6:顶层循环会遍历顶层数据

你好:<>[{姓名}、-] ==》 你好:张三、李四、王五

示例7:列表循环会遍历<老婆>列表,-]语法会删除循环后的最后一个顿号

{姓名}的老婆有:<老婆>[{昵称}、-] ==》 张三的老婆有:大房、二房、三房

示例8:顶层循环可以嵌套列表循环

<>[{姓名}的老婆有:<老婆>[{昵称}、-],-] ==》 张三的老婆有:大房、二房、三房,李四的老婆有:大房、二房,王五的老婆有:

示例9:支持判断{列表}非空

<>[({老婆}!=EMPTY)[{姓名}的老婆有:<老婆>[{昵称}、-],]-] ==》 张三的老婆有:大房、二房、三房,李四的老婆有:大房、二房

示例10:支持判断{列表}为空时输出其他内容

<>[({老婆}!=EMPTY)[{姓名}的老婆有:<{老婆}>[{昵称}、-]]({老婆}=EMPTY)[{姓名}无老婆],-] ==》 张三的老婆有:大房、二房、三房,李四的老婆有:大房、二房,王五无老婆
api/qn.txt · 最后更改: 2020/03/30 22:59 由 admin