feat: 完成项目全量汉化、文档同步及 Undo 系统稳定性修复
This commit is contained in:
38
注意事项.md
38
注意事项.md
@@ -48,7 +48,7 @@
|
||||
1. **真实加载**:使用 `cc.AssetLibrary.loadAsset(uuid, callback)` 在场景进程中异步加载真实的资源实例。
|
||||
2. **实例赋值**:在回调中将加载到的 `asset` 对象赋予组件(`component[key] = asset`),这确保了场景保存时能生成正确的序列化对象。
|
||||
3. **UI 同步**:同步发送 IPC `scene:set-property`,使用 `{ uuid: value }` 格式通知编辑器面板更新 Inspector UI。
|
||||
* **Node/Component**: 对于节点或组件引用,通过 `findNode` 查找实例并直接赋值实例对象,而非 UUID 字符串。
|
||||
* **Node/Component**: 对于节点 or 组件引用,通过 `findNode` 查找实例并直接赋值实例对象,而非 UUID 字符串。
|
||||
|
||||
---
|
||||
|
||||
@@ -68,13 +68,29 @@
|
||||
* **资产识别启发式**:当通过 `manage_components` 赋值时,如果属性名包含以下关键字,插件会尝试将其作为 UUID 资源处理:
|
||||
`prefab`, `sprite`, `texture`, `material`, `skeleton`, `spine`, `atlas`, `font`, `audio`, `data`
|
||||
* **建议**:如果资源未正确加载,请检查属性名是否包含以上关键字,或手动确认该 UUID 不属于任何节点。
|
||||
69:
|
||||
70: ---
|
||||
71:
|
||||
72: ## 7. 搜索工具 (search_project) 使用建议
|
||||
73: * **性能建议**:尽量指定 `path` 参数缩小搜索范围(如 `db://assets/scripts`),避免全项目大面积搜索,尤其是在包含大量旧资源的 Library 目录(虽然插件已过滤)。
|
||||
74: * **正则表达式**:在使用 `useRegex` 时,确保正则模式的语法正确。如果正则匹配失败,工具会返回详细的错误提示。
|
||||
75: * **模式选择**:
|
||||
76: * 查找具体逻辑代码:使用 `matchType: "content"`。
|
||||
77: * 定位资源文件:使用 `matchType: "file_name"` 并配合 `extensions` 过滤。
|
||||
78: * 重构目录结构前:使用 `matchType: "dir_name"` 检查目录名冲突。
|
||||
|
||||
---
|
||||
|
||||
## 7. 搜索工具 (search_project) 使用建议
|
||||
* **性能建议**:尽量指定 `path` 参数缩小搜索范围(如 `db://assets/scripts`),避免全项目大面积搜索,尤其是在包含大量旧资源的 Library 目录(虽然插件已过滤)。
|
||||
* **正则表达式**:在使用 `useRegex` 时,确保正则模式的语法正确。如果正则匹配失败,工具会返回详细的错误提示。
|
||||
* **模式选择**:
|
||||
* 查找具体逻辑代码:使用 `matchType: "content"`。
|
||||
* 定位资源文件:使用 `matchType: "file_name"` 并配合 `extensions` 过滤。
|
||||
* 重构目录结构前:使用 `matchType: "dir_name"` 检查目录名冲突。
|
||||
|
||||
---
|
||||
|
||||
## 8. Undo/Redo (撤销/重做) 使用指南
|
||||
|
||||
### 8.1 事务分组
|
||||
* **背景**:连续执行多次修改(如同时移动并缩放)时,通常希望一次“撤销”能回滚所有更改。
|
||||
* **最佳实践**:
|
||||
1. 调用 `manage_undo(action: 'begin_group', description: '操作描述')`。
|
||||
2. 执行多次修改(如调用 `update_node_transform`)。
|
||||
3. 调用 `manage_undo(action: 'end_group')`。
|
||||
* **注意**:`undo-record` 需要在 `begin_group` 时明确关联节点 ID,否则可能导致撤销栈无法精准匹配对象。
|
||||
|
||||
### 8.2 属性修改方式
|
||||
* **核心规则**:在 `scene-script.js` 中严禁直接使用 `node.x = 100`。
|
||||
* **正确做法**:必须通过 `Editor.Ipc.sendToPanel('scene', 'scene:set-property', ...)`。只有这样,修改才会被 Cocos Creator 的 UndoManager 捕获,从而支持撤销。
|
||||
|
||||
Reference in New Issue
Block a user