在流程、门户、内容管理或服务管理中可以创建了脚本配置。
默认情况下系统以javascript格式进行编辑。
这个时候可以使用this.include()
引用脚本配置。
在v9.2以后,如果脚本配置名称以.json 、 .html 或 .css结束,系统会加载相应的编辑器。
这种情况您可以使用如下方法获取内容。
this.includeHmtl();
this.includeCss();
this.includeJson();
Methods
inner
include(optionsOrName, callbackopt)
this.include是一个方法,当您在流程、门户、内容管理或服务管理中创建了脚本配置,可以使用this.include()用来引用脚本配置。
v8.0及以后版本中增加了服务管理的脚本配置。
Syntax
//您可以在表单、流程、视图和查询视图的各个嵌入脚本中,通过this.include()来引用本应用或其他应用的脚本配置,如下:
this.include( optionsOrName, callback )
Parameters
-
optionsOrName
String
|Object
可以是脚本标识字符串或者是对象。
//如果需要引用其他应用的脚本配置,将options设置为Object; this.include({ //type: 应用类型。可以为 portal process cms service。流程脚本默认为process,服务管理中默认为service type : "portal", application : "首页", // 门户、流程、CMS的名称、别名、id。 引用服务管理的脚本则忽略该参数。 name : "initScript" // 脚本配置的名称、别名或id }); //引用服务管理中的脚本 this.include({ "type": "service", "name": "scriptName" }); //引用流程管理中的脚本 this.include({ "type": "process", "application": "appName", "name": "scriptName" }); //引用内容管理中的脚本 this.include({ "type": "cms", "application": "appName", "name": "scriptName" }); //引用门户管理中的脚本 this.include({ "type": "portal", "application": "appName", "name": "scriptName" });
-
callback
function
<optional>
加载后执行的回调方法。
Examples
//定义一个方法
this.define('getFileSQL',function(){
const application = ['公司发文','部门发文','党委发文'];
const apps = application.map((app)=>{
return `o.applicationName = '${app}'`
});
return `(${apps.join(' OR ')})`;
});
this.include({
type : 'cms',
application : 'fileRes',
name : 'FileSql'
});
const sql = this.getFileSQL();
return `SELECT o FROM com.x.processplatform.core.entity.content.Task o WHERE ${sql}`;
Source
inner
includeHtml(optionsOrName, callbackopt, asyncopt)
当脚本配置保存的是html文件(名称以.html结束),this.includeHtml可以以获取html内容。
Syntax
this.includeHtml( optionsOrName, callback, async )
Parameters
-
optionsOrName
String
|Object
可以是脚本标识字符串或者是对象。
//如果需要获取本应用的html(在脚本配置中),将options设置为String。 this.includeHtml("test.html") //脚本配置的名称、别名或id //如果需要获取其他应用的html,将options设置为Object; this.includeHtml({ //type: 应用类型。可以为 portal process cms service。 //如果没有该选项或者值为空字符串,则表示应用脚本和被应用的脚本配置类型相同。 //比如在门户的A应用脚本中引用门户B应用的脚本配置,则type可以省略。 type : "portal", application : "首页", // 门户、流程、CMS的名称、别名、id。 默认为当前应用,如果脚本在服务管理中忽略该参数 name : "test.html" // 脚本配置的名称、别名或id }) //获取服务管理中的html this.includeHtml({ "type": "service", "name": "scriptName" }); //获取流程管理中的html this.includeHtml({ "type": "process", "application": "appName", "name": "scriptName" }); //获取内容管理中的html this.includeHtml({ "type": "cms", "application": "appName", "name": "scriptName" }); //获取门户管理中的html this.includeHtml({ "type": "portal", "application": "appName", "name": "scriptName" });
-
callback
function
<optional>
加载后执行的回调方法
-
async
Boolean
<optional>
是否异步加载,默认为true
Since
- v9.2
Example
//同步获取html(不推荐)
//在门户的脚本库里配置了html,名称为test.html
var html = this.includeHtml({
"type": "portal",
"application": "appName", //门户的标识
"name": "test.html"
});
Source
inner
includeCss(optionsOrName, callbackopt, asyncopt)
当脚本配置保存的是css文件(名称以.css结束),this.includeCss可以以获取html内容。
Syntax
this.includeCss( optionsOrName, callback, async )
Parameters
-
optionsOrName
String
|Object
可以是脚本标识字符串或者是对象。
//如果需要获取本应用的css(在脚本配置中),将options设置为String。 this.includeCss("test.css") //脚本配置的名称、别名或id //如果需要获取其他应用的html,将options设置为Object; this.includeCss({ //type: 应用类型。可以为 portal process cms service。 //如果没有该选项或者值为空字符串,则表示应用脚本和被应用的脚本配置类型相同。 //比如在门户的A应用脚本中引用门户B应用的脚本配置,则type可以省略。 type : "portal", application : "首页", // 门户、流程、CMS的名称、别名、id。 默认为当前应用,如果脚本在服务管理中忽略该参数 name : "initScript" // 脚本配置的名称、别名或id }) //获取服务管理中的html this.includeCss({ "type": "service", "name": "scriptName" }); //获取流程管理中的html this.includeCss({ "type": "process", "application": "appName", "name": "scriptName" }); //获取内容管理中的html this.includeCss({ "type": "cms", "application": "appName", "name": "scriptName" }); //获取门户管理中的html this.includeCss({ "type": "portal", "application": "appName", "name": "scriptName" });
-
callback
function
<optional>
加载后执行的回调方法
-
async
Boolean
<optional>
是否异步加载,默认为true
Since
- v9.2
Example
//同步获取css文本(不推荐)
//在门户的脚本库里配置了css,名称为test.css
var cssText = this.includeCss({
"type": "portal",
"application": "appName", //门户的标识
"name": "test.css"
});
Source
inner
includeJson(optionsOrName, callbackopt, asyncopt)
当脚本配置保存的是json文件(名称以.json结束),this.includeJson可以以获取json内容。
Syntax
this.includeJson( optionsOrName, callback, async )
Parameters
-
optionsOrName
String
|Object
可以是脚本标识字符串或者是对象。
//如果需要获取本应用的json(在脚本配置中),将options设置为String。 this.includeJson("test.json") //脚本配置的名称、别名或id //如果需要获取其他应用的html,将options设置为Object; this.includeJson({ //type: 应用类型。可以为 portal process cms service。 //如果没有该选项或者值为空字符串,则表示应用脚本和被应用的脚本配置类型相同。 //比如在门户的A应用脚本中引用门户B应用的脚本配置,则type可以省略。 type : "portal", application : "首页", // 门户、流程、CMS的名称、别名、id。 默认为当前应用,如果脚本在服务管理中忽略该参数 name : "initScript" // 脚本配置的名称、别名或id }) //获取服务管理中的json对象 this.includeJson({ "type": "service", "name": "scriptName" }); //获取流程管理中的json对象 this.includeJson({ "type": "process", "application": "appName", "name": "scriptName" }); //获取内容管理中的json对象 this.includeJson({ "type": "cms", "application": "appName", "name": "scriptName" }); //获取门户管理中的json对象 this.includeJson({ "type": "portal", "application": "appName", "name": "scriptName" });
-
callback
function
<optional>
加载后执行的回调方法
-
async
Boolean
<optional>
是否异步加载,默认为true
Since
- v9.2
Example
//同步获取json数据(不推荐)
//在门户的脚本库里配置了css,名称为test.json
var json = this.includeJson({
"type": "portal",
"application": "appName", //门户的标识
"name": "test.json"
});