fix: workspace refresh
This commit is contained in:
@@ -78,13 +78,16 @@ function AuthenticatedLayout() {
|
||||
|
||||
const [sidebarCollapsed, setSidebarCollapsed] = useState(false);
|
||||
|
||||
// 绑定 api 到 script workspace store
|
||||
// 绑定 api 到 script workspace store。
|
||||
// 必须放在 render body(同步),不能用 useEffect([api]) + cleanup —
|
||||
// 后者会在 deps 变化时先 cleanup(null),再让 ScriptsPage 的 useEffect 跑,
|
||||
// 此时 _api 为 null,load() 抛 "script workspace API 未绑定"。
|
||||
bindScriptWorkspaceApi(api);
|
||||
useEffect(() => {
|
||||
bindScriptWorkspaceApi(api);
|
||||
return () => {
|
||||
bindScriptWorkspaceApi(null);
|
||||
};
|
||||
}, [api]);
|
||||
}, []);
|
||||
|
||||
// 心跳 / cleanup / 切页结束编辑 / 卸载前释放
|
||||
useEditSessionLifecycle({ activePage });
|
||||
|
||||
Reference in New Issue
Block a user