UNPKG

mm_os

Version:

MM_OS服务端架构,用于快速构建应用程序,支持网站建设、小程序后台、AI应用、物联网(IOT/AIOT)、游戏服务端等多种场景。

59 lines (54 loc) 1.42 kB
const Item = require('mm_machine').Drive; /** * Event事件驱动类 * @augments {Item} * @class */ class Drive extends Item { static config = { // 应用名称 例如:demo_app 'app': 'server', // 目标 'target': '', // 阶段, 分执行前before、验证check、主要main、渲染render、执行后after阶段 'stage': 'main' }; /** * 构造函数 * @param {object} config 配置参数 * @param {object} parent 父对象 * @class */ constructor(config, parent) { super({ ...Drive.config, ...config }, parent); // 默认启用热更新 this.mode = 3; } } /** * 获取模型 * @param {string} type 模型类型 * @returns {object} 返回获取到的模型 */ Drive.prototype.getModel = function (type) { let model = { ...this.config }; let dir = this.getDir(); let l = $.slash; let app_name = dir.between('app' + l, l); let plugin_name = dir.between('plugin' + l, l); let name = dir.basename(); model.app = app_name; model.plugin = plugin_name; model.name = model.name || app_name + '_' + name; let target = ''; if (name === 'client') { target = '/api/' + app_name + '*'; } else if (name === 'manage') { target = '/apis/' + app_name + '*'; } else { target = '/' + name + '*'; } model.target = target; return model; }; module.exports = Drive;