# 嵌入脚本介绍
# 什么是嵌入脚本
SuccBI支持多种方式嵌入外部个性化脚本到已有的功能页面中,包括个性化的js
或css
代码,通过嵌入脚本可以实现丰富的个性化效果和定制功能,如:
- 让某个仪表板有CSS3动画特效
- 让仪表板上的按钮可以选择一个自定义的脚本交互动作
- 当用户第一次打开报表时自动弹出一个帮助文档对话框
- 在门户应用顶部添加一个全局的参数下拉框作用于门户内所有报表
- ……
嵌入脚本同样也支持后端脚本,在系统发生特定的“事件”(如有web请求、服务器启动了、有用户登录了……)时第三方开发者可以使用钩子脚本来执行个性化的业务逻辑代码,比如:
- 当有用户登录成功后,根据用户的某些属性动态设置用户的权限。
- 当有用户登录时,执行额外的判断,判断用户是否能登录。
- 当有web请求时,如果当前用户还没登录,那么自动判断是否需要进行CA证书验证登录。
- ……
# 嵌入脚本的位置
嵌入脚本支持多种作用域,当存在多个脚本时,系统将按如下优先级选择脚本函数调用(具体规则见custom.js):
- 应用内(如某表单应用内,某门户应用内)
- 项目全局
- 系统全局
脚本必须存放在系统约定的位置,脚本的位置决定了它的作用域:
- sysdata - 系统数据项目
- settings
- public
- hooks - 系统全局前端钩子脚本,系统内的报表、仪表板、应用、表单应用、元数据管理界面等所有页面都加载
- 业务项目
- settings
- actions - 后端的个性化脚本
- xxx.action
- actions - 后端的个性化脚本
- fapp
- xxx.fapp - 某表单应用
- app
- xxx.app - 某业务应用
- public
- hooks - 项目全局前端钩子脚本目录,项目内的报表、仪表板、应用、表单应用加载
- settings
0条评论
评论