在明道云的开发中,有一些操作用工作流搭建的方式会异常繁琐,还需要重复搭建,但如果用代码块的方式就很简单且可以复制使用。这两天,我在开发需要利用代码块中处理对象数组,经过了一系列的努力和尝试终于走通了,给大家分享一些明道云中特有的关键点。
我的开发需求是将所有子表记录的某几个字段拼接成对象数组:
- 采用工作流的子流程,每个子表记录以字段值拼接的方式生成一个类似对象的字符串,并存到一个文本字段中,注意这里的属性名要用双引号,不要回车,所有符号要用英文半角,可以将第一次生成的字符串放到 VS Code 软件中检验一下。
- 通过工作流将所有子表记录的对象字符串拼接起来。
- 明道云的代码块只接受字符串形式的,在传入代码块之前,字符串要处理下,主要是字符串最后去掉一个逗号,两头加上[ ]:
let str = input.arrData;
str = strRemoveLast(str, 1, false);
str='['+str+']';
//参数string是源字符串,参数numuber是删除几个字符,参数Boolean:true代表删除前几位,false代表删除后几位。
function strRemoveLast(string, number, Boolean) {
let num = number;
let str = string;
str = str.substring(Boolean, str.length - num);
return str;
- 传入代码块时,要把字符串转换成对象数组,用 JSON.parse( );就行了,如图:
我断断续续花了假期的 2 天时间才走通了,分享给大家,望各位需要时少走弯路。
最重要的是,祝我们的祖国生日快乐!