为了不乱改,我自己也是走的 PR 流程,OPENTGX 最新仓库地址:
https://github.com/qilinshuyuan/OpenTGX
如果觉得不错的话,请大家给个star:
作为一个通用的框架,OpenTGX 版本会以小而美作为发展方向。主要解决模块管理、UI管理、项目协同等问题。
TGX 的衍生案例,则会解决更多不同场合下的应用问题,请参观 TGX 系列作品:https://store.cocos.com/app/search?name=tgx
所有使用 OpenTGX 开发产品的朋友,请联系我,加入案例库。
这次的更新主要是做了易用性方面的调整。
1、添加 tgx_class 装饰器
添加了 tgx_class(模块名[,父类名])
装饰器来注册 UI 类,旧的 tgxModuleContext.attachImplClass 已弃用,现在只需要像下面这样注册就行
//普通 UI
@tgx_class('basic')
export class MyUI extends tgx.UIController{
}
//实现父类UI
@tgx_class('basic',SuperClass)
export class MyUI extends SuperClass{
}
2、支持 UI 显示时传参
调用 tgx.UIMgr.inst.showUI
的时候,支持传入自定义参数,方便做UI初始化。
tgx.UIMgr.inst.showUI(MyUI,null,null,{a:1,b:2,c:3});
3、移除 import 依赖
不再需要 import tgx 相关路径,让重构以及代码复用更方便,具体请参考 tgx.ts
4、访问方式变化
使用 tgx.xxxxx
来访问 tgx 相关类,弃用 tgxXXXX
- tgxUIController - tgx.UIControler
- tgxUIMgr.inst.showUI -> tgx.UIMgr.inst.showUI
- tgxUIAlert.show -> tgx.UIAlert.show
5、其他若干细节修复
1、hide 变为 close,更准确表达 UI 会被销毁的含义
2、修复 UI 未load成功前就调用 close 无法隐藏的问题
3、使用双向链表替代数组,以解决在 update 或者事件回调过程中移除UI和事件的问题
4、UIController 添加 igonreCloseAll 标记,使某些UI可以跨场景显示。
希望大家使用 COCOS 越来越开心。