mirror of
https://gitee.com/dgflash/oops-plugin-framework.git
synced 2026-05-07 01:01:09 +08:00
修改代码模板,兼容新版框架
This commit is contained in:
3
dist/create-script.js
vendored
3
dist/create-script.js
vendored
@@ -7,7 +7,7 @@ exports.createScript = exports.createScriptBll = exports.createScriptModule = ex
|
||||
const fs_1 = require("fs");
|
||||
const path_1 = __importDefault(require("path"));
|
||||
/** 写入文件 */
|
||||
function createView(directoryPath, fileName, content, isEcsComp = true) {
|
||||
function createView(directoryPath, fileName, content, moduleName, isEcsComp = true) {
|
||||
return new Promise(async (resolve, reject) => {
|
||||
// 创建脚本
|
||||
let className = fileName + "View";
|
||||
@@ -20,6 +20,7 @@ function createView(directoryPath, fileName, content, isEcsComp = true) {
|
||||
}
|
||||
if (!(0, fs_1.existsSync)(scriptUrl)) {
|
||||
content = content.replace(/<%Name%>/g, className);
|
||||
content = content.replace(/<%ModuleName%>/g, moduleName);
|
||||
await Editor.Message.request('asset-db', 'create-asset', scriptUrl, content);
|
||||
}
|
||||
// 创建预制
|
||||
|
||||
8
dist/default/index.js
vendored
8
dist/default/index.js
vendored
@@ -45,9 +45,11 @@ module.exports = Editor.Panel.define({
|
||||
break;
|
||||
case "View":
|
||||
title = `i18n:oops-framework.createView`;
|
||||
showModule = true;
|
||||
break;
|
||||
case "ViewMvvm":
|
||||
title = `i18n:oops-framework.createViewMvvm`;
|
||||
showModule = true;
|
||||
break;
|
||||
}
|
||||
// 创建框架配置界面
|
||||
@@ -79,7 +81,7 @@ module.exports = Editor.Panel.define({
|
||||
}
|
||||
switch (type) {
|
||||
case "GameComponent":
|
||||
await (0, create_script_1.createView)(path, filename, GameComponent_1.TemplateGameComponent, false);
|
||||
await (0, create_script_1.createView)(path, filename, GameComponent_1.TemplateGameComponent, null, false);
|
||||
break;
|
||||
case "Module":
|
||||
await (0, create_script_1.createScriptModule)(path, filename, Module_1.TemplateModule);
|
||||
@@ -91,10 +93,10 @@ module.exports = Editor.Panel.define({
|
||||
await (0, create_script_1.createScriptBll)(path, filename, ModuleBll_1.TemplateBll, moduleName);
|
||||
break;
|
||||
case "View":
|
||||
await (0, create_script_1.createView)(path, filename, ModuleView_1.TemplateView);
|
||||
await (0, create_script_1.createView)(path, filename, ModuleView_1.TemplateView, moduleName);
|
||||
break;
|
||||
case "ViewMvvm":
|
||||
await (0, create_script_1.createView)(path, filename, ModuleViewVM_1.TemplateViewMvvm);
|
||||
await (0, create_script_1.createView)(path, filename, ModuleViewVM_1.TemplateViewMvvm, moduleName);
|
||||
break;
|
||||
}
|
||||
close();
|
||||
|
||||
5
dist/template/Module.js
vendored
5
dist/template/Module.js
vendored
@@ -2,10 +2,11 @@
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.TemplateModule = void 0;
|
||||
exports.TemplateModule = `import { ecs } from "db://oops-framework/libs/ecs/ECS";
|
||||
import { CCEntity } from 'db://oops-framework/module/common/CCEntity';
|
||||
|
||||
/** <%Name%> 模块 */
|
||||
@ecs.register('<%Name%>')
|
||||
export class <%Name%> extends ecs.Entity {
|
||||
export class <%Name%> extends CCEntity {
|
||||
/** ---------- 数据层 ---------- */
|
||||
// <%Name%>Model!: <%Name%>ModelComp;
|
||||
|
||||
@@ -17,6 +18,6 @@ export class <%Name%> extends ecs.Entity {
|
||||
|
||||
/** 初始添加的数据层组件 */
|
||||
protected init() {
|
||||
// this.addComponents<ecs.Comp>();
|
||||
// this.addComponents();
|
||||
}
|
||||
}`;
|
||||
|
||||
12
dist/template/ModuleView.js
vendored
12
dist/template/ModuleView.js
vendored
@@ -3,21 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.TemplateView = void 0;
|
||||
exports.TemplateView = `import { _decorator } from "cc";
|
||||
import { ecs } from "db://oops-framework/libs/ecs/ECS";
|
||||
import { CCComp } from "db://oops-framework/module/common/CCComp";
|
||||
import { CCView } from "db://oops-framework/module/common/CCView";
|
||||
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
/** 视图层对象 */
|
||||
@ccclass('<%Name%>Comp')
|
||||
@ecs.register('<%Name%>', false)
|
||||
export class <%Name%>Comp extends CCComp {
|
||||
/** 视图层逻辑代码分离演示 */
|
||||
start() {
|
||||
// const entity = this.ent as ecs.Entity; // ecs.Entity 可转为当前模块的具体实体对象
|
||||
}
|
||||
export class <%Name%>Comp extends CCView<<%ModuleName%>> {
|
||||
|
||||
|
||||
/** 视图对象通过 ecs.Entity.remove(<%Name%>Comp) 删除组件是触发组件处理自定义释放逻辑 */
|
||||
reset() {
|
||||
this.node.destroy();
|
||||
|
||||
}
|
||||
}`;
|
||||
|
||||
16
dist/template/ModuleViewVM.js
vendored
16
dist/template/ModuleViewVM.js
vendored
@@ -2,25 +2,21 @@
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.TemplateViewMvvm = void 0;
|
||||
exports.TemplateViewMvvm = `import { _decorator } from "cc";
|
||||
import { gui } from "db://oops-framework/core/gui/Gui";
|
||||
import { LayerType } from "db://oops-framework/core/gui/layer/LayerEnum";
|
||||
import { ecs } from "db://oops-framework/libs/ecs/ECS";
|
||||
import { CCVMParentComp } from "db://oops-framework/module/common/CCVMParentComp";
|
||||
import { CCViewVM } from "db://oops-framework/module/common/CCViewVM";
|
||||
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
/** 视图层对象 - 支持 MVVM 框架的数据绑定 */
|
||||
@ccclass('<%Name%>Comp')
|
||||
@ecs.register('<%Name%>', false)
|
||||
export class <%Name%>Comp extends CCVMParentComp {
|
||||
/** 脚本控制的界面 MVVM 框架绑定数据 */
|
||||
@gui.register('<%Name%>', { layer: LayerType.UI, prefab: "界面预制路径" })
|
||||
export class <%Name%>Comp extends CCViewVM<<%ModuleName%>> {
|
||||
data: any = {};
|
||||
|
||||
/** 视图层逻辑代码分离演示 */
|
||||
start() {
|
||||
// const entity = this.ent as ecs.Entity; // ecs.Entity 可转为当前模块的具体实体对象
|
||||
}
|
||||
|
||||
/** 视图对象通过 ecs.Entity.remove(<%Name%>Comp) 删除组件是触发组件处理自定义释放逻辑 */
|
||||
reset() {
|
||||
this.node.destroy();
|
||||
|
||||
}
|
||||
}`;
|
||||
|
||||
Reference in New Issue
Block a user