场景:MisShop设计器中有很多输入表达式或者值的地方,这些内容需要满足一些格式
总的原则:
1、从业务出发,这个地方需要什么类型的数据:
数值?字符串?布尔值?数组?键值对?其他对象类型?
2、如果需要数值:如3、-1.3
如果需要字符串:如"a"、"中国"
如果需要布尔值:如true、false
如果需要输入数组:如["a", "b"]、[2, 6]、[[1,2], [2,4], [1,2,3,4]]
如果需要键值对:如{1: “男”; 2: "女"}、{"江苏":{"苏州":"一线", "常州":"二线"}, "河南":{"郑州":"一线", "济源":"三线"}}
3、表达式是尚未计算出值的数据,其计算结果(包括函数),也会属于1中的数据类型的一种
4、常用的表达式的返回类型:
单元格:
A3:返回A3的单元格的值
Clv.A3:同A3
Cl.A3:返回"A3"字符串
变量集:
ds:返回ds变量集的值
参数:
@xx:根据参数类型进行转换
函数:
List.create():返回数组类型
Map.create():返回键值对类型
table.用户.findOne():返回记录类型
Date.now():返回Date类型的对象
5、在需要输入的地方,也会规定或者提示需要的数据类型:
比如在IDE控件参数配置的地方,某参数的显示名称为:
变量集名称,那么此处应该使用:"ds"
image.png
使用变量集的值,那么此处应该使用:checked
image.png
值:那么此处可以使用A3
image.png
起始单元格名称,那么此处应该使用:"A3"或者Cl.A3,而不应该使用A3
image.png
6、复杂表达式:
复杂表达式也是由简单表达式计算而得的,需要保证简单表达式之间数据类型兼容,可以运算
7、特殊表达式:
有一些表达式是用于特殊功能的,比如:
query.ds.名称:表示此单元格是查询ds的名称字段的值
ds.select():用于将js扩展显示
save.dbIncrement():在保存至中,用于某数据表的字段的增量更新
网友评论