外部应用调用requestResize无法调整Banno仪表板插件高度咨询
解决Banno仪表板插件requestResize无响应的问题
以下是针对你遇到的requestResize调用后插件高度无变化问题的排查和修复方案:
确认参数格式正确性
部分版本的@jack-henry/banno-plugin-framework-bridge要求requestResize传入包含height属性的对象,而非直接传数值。检查本地包的类型定义文件(如index.d.ts)确认参数结构,示例:// 错误写法 bridge.requestResize(800); // 正确写法(适配部分版本) bridge.requestResize({ height: 800 });校验postMessage格式规范
虽然能看到父窗口收到消息,但需确认消息结构完全符合Banno要求:- 消息
type字段必须为REQUEST_RESIZE payload中的height需为数字类型且值正确
若字段拼写错误、类型不符,父窗口会忽略该请求。
- 消息
检查插件配置权限
确认Banno仪表板的插件配置中开启了动态高度调整权限,部分插件默认固定高度,即使发送resize请求也不会生效。可在插件配置后台查看是否有“允许动态高度”开关,或检查插件manifest文件的相关声明。确保调用时机正确
避免在插件初始化未完成、DOM未渲染完毕时调用requestResize。建议在内容加载完成的回调中执行,比如表格渲染完成后:table.on('renderComplete', () => { bridge.requestResize({ height: 400 }); });排查版本兼容性
检查当前@jack-henry/banno-plugin-framework-bridge版本与Banno仪表板版本是否兼容。尝试升级到最新版本:npm update @jack-henry/banno-plugin-framework-bridge若最新版本存在问题,可降级至之前的稳定版本测试。
测试最小复现案例
编写极简页面排除业务代码干扰,确认是否为框架本身问题:<script src="node_modules/@jack-henry/banno-plugin-framework-bridge/dist/banno-plugin-framework-bridge.js"></script> <script> const bridge = window.BannoPluginFrameworkBridge.initialize(); bridge.requestResize({ height: 300 }); </script>若该案例生效,说明问题出在业务代码中(如存在高度覆盖、消息拦截逻辑)。
内容的提问来源于stack exchange,提问作者rl.spiral
相关产品推荐
相关产品推荐

