Files
oops-plugin-framework/dist/Config.js
dgflash d2c68fbab5 fix(gui): 修复 onBeforeRemove 回调不触发的问题
问题原因:
在 LayerUI.remove() 方法中,state.valid 被提前设置为 false,
导致 LayerUIElement.remove() 中判断 state.valid 时条件不成立,
从而跳过了 onBeforeRemove 回调的触发。

修复方案:
将 state.valid = false 的赋值操作移动到 LayerUIElement.remove()
调用之后执行,确保回调能正常触发。

影响范围:
- 修复通过 oops.gui.remove() 关闭界面时 onBeforeRemove 回调不执行的问题
- 不影响界面缓存和异步加载的僵尸节点防护逻辑
2026-04-01 22:38:10 +08:00

2 lines
1.4 KiB
JavaScript

"use strict";var _=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var T=Object.prototype.hasOwnProperty;var p=(t,o)=>{for(var s in o)_(t,s,{get:o[s],enumerable:!0})},n=(t,o,s,E)=>{if(o&&typeof o=="object"||typeof o=="function")for(let e of c(o))!T.call(t,e)&&e!==s&&_(t,e,{get:()=>o[e],enumerable:!(E=r(o,e))||E.enumerable});return t};var S=t=>n(_({},"__esModule",{value:!0}),t);var b={};p(b,{API_OPEN_ASSET:()=>U,API_STATE:()=>D,ASSETS_DIR:()=>y,ASSET_PROTOCOL:()=>M,CHANNEL_ASSET_DB:()=>u,DEFAULT_PORT:()=>x,HASH_INITIAL:()=>C,HEADER_PROJECT_ID:()=>a,LOCAL_DIR:()=>I,METHOD_OPEN_ASSET:()=>d,METHOD_QUERY_ASSET_INFO:()=>L,METHOD_QUERY_ASSET_META:()=>N,METHOD_QUERY_URL_BY_UUID:()=>P,METHOD_QUERY_UUID_BY_URL:()=>H,PACKAGE_NAME:()=>O,PROJECT_ID_PREFIX:()=>Y,SERVER_HOST:()=>A,SETTINGS_FILE:()=>R});module.exports=S(b);var A="127.0.0.1",x=8456,O="oops",R="vscode-creator-bridge.json",I="local",D="/state",U="/open-asset",a="x-cocos-project-id",u="asset-db",H="query-uuid-by-url",P="query-url-by-uuid",L="query-asset-info",N="query-asset-meta",d="open-asset",M="db://",y="assets",C=2166136261,Y="p_";0&&(module.exports={API_OPEN_ASSET,API_STATE,ASSETS_DIR,ASSET_PROTOCOL,CHANNEL_ASSET_DB,DEFAULT_PORT,HASH_INITIAL,HEADER_PROJECT_ID,LOCAL_DIR,METHOD_OPEN_ASSET,METHOD_QUERY_ASSET_INFO,METHOD_QUERY_ASSET_META,METHOD_QUERY_URL_BY_UUID,METHOD_QUERY_UUID_BY_URL,PACKAGE_NAME,PROJECT_ID_PREFIX,SERVER_HOST,SETTINGS_FILE});