import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS"; import { VM } from "../../../../extensions/oops-plugin-framework/assets/libs/model-view/ViewModel"; /** 数据层对象 */ @ecs.register('dataModel') export class dataModelComp extends ecs.Comp { /** 提供 MVVM 组件使用的数据 */ private vm: dataVM = new dataVM(); /** 显示数据添加到 MVVM 框架中监视 */ vmAdd() { console.log("dataModelComp vmAdd"); VM.add(this.vm, "data"); } /** 显示数据从 MVVM 框架中移除 */ vmRemove() { VM.remove("data"); } /** 数据层组件移除时,重置所有数据为默认值 */ reset() { for (var key in this.vm) { delete this.vm[key]; } } } class dataVM { /** 英雄名称 */ name: string = "数据测试"; /** 当前等级 */ porwer: number = 0; /** 当前经验 */ def: number = 0; /** 下级经验 */ speed: number = 0; reset() { this.name = ""; this.porwer = 0; this.def = 0; this.speed = 0; } }