Merge remote-tracking branch 'origin/master'
| | |
| | | <template> |
| | | <div class="UI-dynamic" :id="'UI-dynamic-'+areasName+componentVO.oid"> |
| | | |
| | | <div v-if="isError" style="color: #F56C6C">这个自定义页面的地址格式不正确。推荐使用UI:type#content?param=xxx这种形式</div> |
| | | <component v-else :is="asyncComponent" |
| | | :customOptions="customOptions" |
| | | :inDialog="inDialog" |
| | | :key="areasName+'customCom-'+componentVO.oid" |
| | | :componentVO="componentVO" |
| | | :sourceData="sourceData" |
| | | :areasName="areasName" |
| | | :paramVOS="paramVOS"></component> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | default: true |
| | | }, |
| | | }, |
| | | components:{ |
| | | |
| | | }, |
| | | data() { |
| | | return {} |
| | | return { |
| | | customClass:this.componentVO.customClass, //UI:type#content?param=xxx或者 组件name:type#content?param=xxx |
| | | isError:false, //路径解析失败 |
| | | componentPath:'@/views/base/UIContentViewer' //自定义使用的组件路径 |
| | | } |
| | | }, |
| | | computed:{ |
| | | customOptions() { |
| | | let componentPath='@/views/base/UIContentViewer'; |
| | | if(this.customClass.indexOf(":") <0){ |
| | | this.isError=true; |
| | | return ; |
| | | } |
| | | |
| | | if(this.customClass.split(':')[0]!='UI' && this.customClass.split(':')[0]!='ui'){ |
| | | componentPath='@/views/custom/'+this.customClass.split(':')[0]; |
| | | } |
| | | let urlParams={}; |
| | | let btmType='' |
| | | let content='' |
| | | if(this.customClass.split(':')[1].indexOf("?") <0){ |
| | | btmType=this.customClass.split(':')[1].split('#')[0]; |
| | | content=this.customClass.split(':')[1].split('#')[1]; |
| | | }else { |
| | | let split1 = this.customClass.split(':')[1].split('?')[0]; |
| | | let split2 = this.customClass.split(':')[1].split('?')[1]; |
| | | btmType=split1.split('#')[0]; |
| | | content=split1.split('#')[1]; |
| | | let paramsArray = split2.split("&"); |
| | | paramsArray.forEach(item=>{ |
| | | var preParam =item.split("="); |
| | | if(preParam[0]=='btmname'){ |
| | | urlParams['btmType']=preParam[1]; |
| | | }else if(preParam[0]=='imagetype'){ |
| | | urlParams['imageType']=preParam[1]; |
| | | if(preParam[1]=='fileobject'){ |
| | | |
| | | } |
| | | }else{ |
| | | urlParams[preParam[0]] = preParam[1]; |
| | | } |
| | | }) |
| | | } |
| | | |
| | | this.componentPath=componentPath; |
| | | return { |
| | | btmType:btmType, |
| | | content:content, |
| | | urlParams: urlParams, |
| | | uiComponentType: this.componentVO.uiComponentType, |
| | | uiComponentTypeText: this.componentVO.uiComponentTypeText, |
| | | uiParseClass: this.componentVO.uiParseClass |
| | | } |
| | | }, |
| | | asyncComponent() { |
| | | return import(this.componentPath); |
| | | } |
| | | }, |
| | | created() { |
| | | |
| | | } |
| | | } |
| | | </script> |
| | |
| | | isShow:{ |
| | | handler(newval) { |
| | | if(newval) { |
| | | console.log(this.$el.clientHeight)} |
| | | //console.log(this.$el.clientHeight) |
| | | } |
| | | } |
| | | } |
| | | }, |
| | |
| | | :paramVOS="paramVOS" |
| | | :isShow="isShow"> |
| | | </dynamic-tree> |
| | | <dynamic-custom v-else-if="componentVO.uiComponentType=='custom'" :inDialog="inDialog" |
| | | <dynamic-custom v-else-if="componentVO.uiComponentType=='customer'" :inDialog="inDialog" |
| | | :key="areasName+'custom-'+componentVO.oid" |
| | | :componentVO="componentVO" |
| | | :sourceData="sourceData" |
| | |
| | | children: [ |
| | | { |
| | | path: '', |
| | | component: () => import("@/views/base/UIContentVIewer"), |
| | | component: () => import("@/views/base/UIContentViewer"), |
| | | props: true |
| | | } |
| | | ] |
| | |
| | | "versionSeq": 0, |
| | | "versionValue": null |
| | | }, |
| | | { |
| | | "btmname": null, |
| | | "buttons": [], |
| | | "checkInBy": null, |
| | | "checkInTime": null, |
| | | "checkOutBy": null, |
| | | "checkOutTime": null, |
| | | "copyFromVersion": null, |
| | | "createTime": null, |
| | | "creator": null, |
| | | "customClass": "UI:processreview#DepartmentProcessReview_web?param=xxx", |
| | | "data": null, |
| | | "description": "", |
| | | "extendAttr": "", |
| | | "firstR": null, |
| | | "firstV": null, |
| | | "formDefineVO": null, |
| | | "id": null, |
| | | "lastModifier": null, |
| | | "lastModifyTime": null, |
| | | "lastR": null, |
| | | "lastV": null, |
| | | "lcStatus": null, |
| | | "lcStatusText": null, |
| | | "lctid": null, |
| | | "name": "自定义显示", |
| | | "nameOid": null, |
| | | "oid": "A05C554A-5589-F964-2004-15CB05CBEE6D", |
| | | "orderNum": 2, |
| | | "owner": null, |
| | | "pkLayout": "C08F5364-F23D-9602-2165-2487E3DD9E0C", |
| | | "revisionOid": null, |
| | | "revisionRule": null, |
| | | "revisionSeq": 0, |
| | | "revisionValue": null, |
| | | "secretGrade": null, |
| | | "secretGradeText": null, |
| | | "tableDefineVO": null, |
| | | "treeDefineVO": null, |
| | | "treeTableDefineVO": null, |
| | | "ts": null, |
| | | "uiComponentType": "customer", |
| | | "uiComponentTypeText": "自定义模板", |
| | | "uiParseClass": "", |
| | | "versionRule": null, |
| | | "versionSeq": 0, |
| | | "versionValue": null |
| | | } |
| | | ], |
| | | "copyFromVersion": null, |
| | | "createTime": "2022-02-08 10:40:50.000", |