lowcode-engine icon indicating copy to clipboard operation
lowcode-engine copied to clipboard

多页面切换后页面效果及schema.json展示正常,但是源码面板中的index.js和index.css没有更新,还是上一页的内容

Open relaxing0314 opened this issue 1 year ago • 1 comments

1678186347952

image 点击菜单切换后,渲染效果及schema.json展示正常,但源码面板中的index.js和index.css没有更新,还是上一页的内容。

1678186559561

relaxing0314 avatar Mar 07 '23 10:03 relaxing0314

同问,源码面板好像完全依赖于Schema.json中的orangeCode字段,除了手动修改该字段有另外比如API操作源码面板内容的吗?

hustwebh avatar Mar 08 '23 06:03 hustwebh

同问,还有数据源码面板的中数据也是旧数据,没有更新

rongrongt avatar Apr 03 '23 06:04 rongrongt

数据没有更新成当前页面的是因为code-editor这个插件读取的schema是project的不是currentDocument,我最近改了这。我提个pr吧

ChiZng avatar May 08 '23 08:05 ChiZng

我看最新的代码已经修复了

ChiZng avatar May 08 '23 08:05 ChiZng

没有生效可能是你们schema中有originCode,就直接读的这个字段而不是initCode() image

ChiZng avatar May 09 '23 02:05 ChiZng

我也复现了这个问题,有可行的解决方案么

ranyue avatar Jun 21 '23 02:06 ranyue

我修改了一行代码,目前解决了问题。 skeletonRef.current?.onHidePanel((pluginName: string) => { if (pluginName === 'codeEditor') { // saveSchemaRef.current?.(); } }); 我们切换页面的时候,会先触发 codeEditor面板的监听关闭的保存,然后下来会执行一个 project.removeDocument(project.currentDocument); project.createDocument(schema); 关闭保存中会导入schema ,创建新的document 也会导入schema。都是异步的,但是没有执行顺序管控。 感觉这些 操作需要升级成 promise

ranyue avatar Jun 21 '23 03:06 ranyue