刷新页面
平台首页中默认带的有刷新按钮,在开发调试模式时会显示,可以直接点击按钮进行功能页面的刷新 实施部署运行模式时首页中的刷新按钮平台默认控制的不会显示,如果部分功能要刷新可以在功能中加一个按钮,然后调用this.getParent().reload();即可 这个是对从功能树或者用justep.Shell.showPage方法打开的功能页上可以直接用
平台首页中默认带的有刷新按钮,在开发调试模式时会显示,可以直接点击按钮进行功能页面的刷新 实施部署运行模式时首页中的刷新按钮平台默认控制的不会显示,如果部分功能要刷新可以在功能中加一个按钮,然后调用this.getParent().reload();即可 这个是对从功能树或者用justep.Shell.showPage方法打开的功能页上可以直接用
可以通过css控制图标的隐藏 /* 隐藏树形展开箭头图标*/ .x-grid .tree-minus, .x-grid .tree-plus, .x-grid .tree-leaf{ display : none; }
在功能中需要加一个返回到首页的按钮,或者在功能页关闭的时候返回到首页可以在调用justep.Shell.showMainPage(); 功能关闭可以在model的onunLoad事件中调用
V3.3以及之后的版本要实现不同的人登陆后打开不同的首页可以修改/UI2/portal/base/base.js中 Model.prototype.createFunctionTree = function() {这个函数的实现的代码实现 1.在这个函数的实现中找到pageMappings[mainPageKey] = param2pageMapping(this._cfg.main); 在这句的前面加上人的判断并设置不同的首页如下: var pageMappings = {}; if (this.getContext().getCurrentPersonMemberFID() == "/ORG01.ogn/9B38128D8B33435DBB6781B6E04AE7FE@ORG01.psm") { this._cfg.main.url = "$UI/portal/sample/main/main.w"; }else{ this._cfg.main.url = "$UI/portal/pc/main/main.w"; } pageMappings[mainPageKey] = param2pageMapping(this._cfg.main); 2.在这个函数的实现中找到this.shellImpl.addPageMappings(pageMappings);在这句代码的前面加上 this.shellImpl.pageMappings = {}; [...]
V3.5之后的版本grid的colunm上放了附件组件后可以自己显示附件名 如果列设置的可编辑模式点击后会显示附件组件,可以通过组件操作附件;如果列是不可编辑的点击名字要显示下载需要如下处理: 1.在grid的onCellRender事件中判断是附件这列并且有值时解析json数据获取文件名等相关的信息,然后用a标签显示 2.下载附件可以在a标签的onClick中调用函数实现 onCellRender中的实现: Model.prototype.grid1CellRender = function(event) { if (event.colName === "fFJ" && event.colVal !== undefined) {//判断是附件这列并且有值 var jsonList = eval("("+event.colVal+")");//把值转换为json对象 var html = ""; if (jsonList.length > 0) { for (var i [...]
组件关联了data在控制只读时推荐用data的规则去控制 需要动态控制只读的时候可以在js中定义函数,然后在规则中用$model调用函数,如果要通过当前计算行的数据判断,可以给函数定义参数,在规则中调用用$row做参数,把当前计算行传过去进去取值判断 如下:判断列fName的值为back时控制fCode不能编辑 1.js中定义函数: Model.prototype.fCodeReadonly = function(row) { var fName = row.val("fName");//通过传的row获取fName的值 if (fName == "back") return true; else return false; } 2.规则中调用
平台默认的attachment(非attachmentSimple)相关的组件点图标调用的是$model.previewOrRemoveItem.bind($model)打开附件查看 如果要调用自己当前.w对应的js中的方法,可以如下修改 $model.getModel().preview.bind($model.getModel(),$object,$model) 其中preview是js中的函数名 attachment组件js文件中定义如下: Model.prototype.preview = function(event, owner) { var docPath = event.docPath.get(); var docID = event.docID.get(); var docName = event.docName.get(); var fileID = event.fileID.get(); if (owner.$state.get() == 'upload' && owner.$access.get() % 4 [...]
在UI2应用模块的config目录XXX.function.xml菜单文件中有展现类型的设置 可以设置为无、solid、hide 设置无需要分配了功能权限才可以功能树显示的 设置为solid不分配功能权限就可以在功能树中显示,但运行时可能会提示没有权限 设置为hide分配功能权限了功能树也不会显示,但是有权限运行,如流程后续环节的页面不需要在功能树中显示从待办任务中可以打开 如果有需求所有人不需要分配功能权限就在功能树中就可以显示并操作,需要如下设置 1.process文件中设置类型为SYSTEM 2.XXX.function.xml菜单文件中展现类型设置为solid
3.5之前的版本只能设置总的,可以在/UI2/system/components/justep/window/main.html中加title属性 3.5以及之后版本中可以在每个.w设置自己的,在window组件上有title属性 title属性的值设置为js:开头的 如下: 如果要设置总的跟3.5之前的版本一样在/UI2/system/components/justep/window/main.html中加title属性 注意还需要下面的操作 /UI2/system/lib/portal/shellImpl.js中shell.setWindowTitle(ret);注释掉 执行tools/dist/dist.bat 注意js缓存的问题
自己定义json,用loadData方法把数据给树形数据(data是树形的)时要注意父ID的设置,根节点的父ID的值可以用{}设置。如下fParentID是否父ID: var json = {"rows":[{"AP_SXSJ":"1","fName":"办公用品","fParentID":{},"rows":[{"AP_SXSJ":"2","fName":"记事本","fParentID":"1"},{"AP_SXSJ":"3","fName":"笔","fParentID":"1"}]}]}; var data = this.comp("treeData"); data.loadData(json,true); var grid= this.comp("treeGrid"); grid.refresh();