帮助中心 >
代码片段
1、前言
在编写一些复杂的流程时,往往需要借助“浏览器脚本”或“RPA引擎脚本”来实现一些功能,有时我们在不同的脚本中可能存在一些相同或类似的代码,为了减少这类代码的重复书写,增强脚本的可维护性与阅读体验,可通过“代码片段”的方式来封装这类代码。
2、代码片段的定义
我们可在大纲视图中,点击“新建代码片段”来创建一个代码片段。 代码片段的定义遵循 CommonJS modules 风格,一个代码片段文件相当于一个 module,我们可以在里面定义变量与函数;需要注意的是,每个“浏览器脚本”或“RPA引擎脚本”节点对代码片段的引用都是互相隔离的,也就是说,A 节点对代码片段中的某个变量修改后,B 节点拿到的变量的值依然是修改之前的。
《新建代码片段》
代码如下:
module.exports = {
str_seed: '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',
/**
* 生成一个随机字符串,长度 len
* @param len
*/
nextString: function (len = 16, seed = this.str_seed) {
if (len <= 0 || !seed) {
return '';
}
let result = '';
while (len-- > 0) {
result += seed.charAt(Math.floor(Math.random() * (seed.length - 1)));
}
return result;
},
};
3、代码片段的引用
我们可以“浏览器脚本”或“RPA引擎脚本”中通过 “require()” 方法来引用我们之前定义的代码片段,这种引用风格也是遵循 CommonJS modules 风格的。
浏览器脚本示例:
(ctx) => {
const guid = require('guid.js');
const randomStr = guid.nextString();
console.log("生成的随机串为:" + randomStr); // 这段代码将在浏览器 Console 输出
}
RPA引擎脚本示例:
const guid = require("guid.js");
const randomStr = guid.nextString();
console.log("生成的随机串为:" + randomStr); // 这段代码将输出一行RPA日志
运行效果:
《调用代码片段示例》
4、流程示例
下面为您演示通过代码片段生成随机密码示例,我们通过输入变量设置流程生成一个长度为10,复杂度比较高的随机密码:
《流程使用效果》
上述流程的源码可通过 花漾RPA市场 获取。
5、总结
当您发现您在不同的脚本节点(包括不同子流程的节点)经常要写相同或相似的代码时,通过封装代码片段可以让脚本看起来更加简洁,同时也更易于维护。