# 二开内部分享方法 **Repository Path**: chuangxin-lida/two-internal-sharing-methods ## Basic Information - **Project Name**: 二开内部分享方法 - **Description**: E10 前端 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-25 - **Last Updated**: 2025-07-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 1.1获取路径参数 ```js //获取路径参数 通用 const pageSdk =ebuilderSDK.getPageSDK(); //获取路径上参数名为cusMenuId的值 const cusMenuId = pagesdk.getParameter("cusMenuId") ``` # 1.2刷新表格视图 ## 相关场景 处于表格视图下,新增数据,回写数据后刷新台账 - 被刷新的台账代码块 注册事件 ```js //注册刷新口子 window?.weappUtils?.eventEmitter?.on('secondDev', 'refreshNumberPenTable_qsqjhtz', (arg) => { ebdfListSdk.reloadTable(); //刷新当前列表 }) ``` - 触发动作流后刷新 关闭弹框再刷新表格 ```js window.ebdfpageSDK.callEsbFlow("xxxxxxx",{ }).then(res => { // 关闭表格弹出框 前提打开的是表格视图 window.weappUtils.eventEmitter?.emit?.('@weapp/ebdpage', 'dialog.close', { pageType: 'SEARCH', closeAll: false, }); //弹出提示信息 if(res.mainTable.code == "200"){ window?.ebuilderSDK?.msg("导入全寿期数据成功",3000) }else if(res.mainTable.code == "500"){ window?.ebuilderSDK?.msg("导入全寿期数据失败",3000) } //触发视图表格的刷新 window?.weappUtils?.eventEmitter?.emit('secondDev', 'refreshNumberPenTable_qsqjhtz',"") }); ``` # 1.3刷新页面组件 ## 相关场景 在EB页面中,存在组件,页面打开的弹框进行操作后,动作了执行后,需要关闭弹框,并刷新组件 - 组件存在的页面的代码块 ```js //注册刷新口子 window?.weappUtils?.eventEmitter?.on('secondDev', 'refreshCustomPenCom', (comId) => { const pageSdk =window?.ebuilderSDK?.getPageSDK(); pageSdk.refresh(comId); }) ``` - 触发刷新页面的组件刷新 ```js window.ebdfpageSDK.callEsbFlow("xxxxxxx",{ }).then(res => { // 关闭表格弹出框 前提打开的是表格视图 window.weappUtils.eventEmitter?.emit?.('@weapp/ebdpage', 'dialog.close', { pageType: 'SEARCH', closeAll: false, }); //触发视图表格的刷新 87gdgdg7d8g7d8g7dgd参数为页面的组件ID window?.weappUtils?.eventEmitter?.emit('secondDev', 'refreshCustomTableCom',"87gdgdg7d8g7d8g7dgd") }); ``` # 1.4关闭表单视图弹框的方法 - 按钮js中调用 ```js // 关闭表单卡片弹出框 window.weappUtils.eventEmitter?.emit?.('@weapp/ebdpage', 'dialog.close', { pageType: 'LAYOUT', // 弹窗类型 closeAll: false, // 是否关闭所有弹窗 }); ``` # 1.5关闭表格视图弹框的方法 - 按钮js中调用 ```js window.weappUtils.eventEmitter?.emit?.('@weapp/ebdpage', 'dialog.close', { pageType: 'SEARCH',//查询台账 closeAll: false, }); ``` # 1.6 静默更新URL参数 - 不刷新页面,添加和修改URL上的参数 ```js function updateURLParameter(param, value) { const url = new URL(window.location.href); url.searchParams.set(param, value); window.history.pushState({}, '', url); //不会去加载这个URL,但是下次浏览器启动的时候会 } ``` # 1.7 全局加载等待 ## 等待动作流完成的场景使用 ```js //打开 window?.ebuilderSDK?.showLoader(); //关闭 window?.ebuilderSDK?.hideLoader(); //相关场景 ebSdk.showLoader();//开始加载 //调用动作流 ebSdk.callEsbFlow("1947955532799283243", mainParams).then(res => { ebSdk.hideLoader();//关闭加载 console.log(res.mainTable.code) var code = res.mainTable.code; if(code){ window.weappUtils.eventEmitter?.emit?.('@weapp/ebdpage', 'dialog.close', { pageType: 'SEARCH', closeAll: false }); ebdfListSdk.reloadTable(); //刷新当前列表 } }); ```