dareway-rui
Version:
68 lines (52 loc) • 1.82 kB
JavaScript
;
var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault');
Object.defineProperty(exports, '__esModule', {
value: true
});
exports.initApp = initApp;
exports.startApp = startApp;
exports.registerModel = registerModel;
exports.unregisterModel = unregisterModel;
var _reaper = _interopRequireDefault(require('./../../core/reaper'));
var _reaperLoading = _interopRequireDefault(require('./../../core/reaper-loading'));
var _exception = require('./../../exception');
var _ES6ModuleLoader = _interopRequireDefault(require('./ES6ModuleLoader'));
var app = null;
function initApp(config) {
if (app) {
throw new Error('RUI应用不能重复初始化!');
}
var es6ModuleLoader = config.es6ModuleLoader,
router = config.router,
_config$exceptionHand = config.exceptionHandler,
exceptionHandler =
_config$exceptionHand === void 0 ? _exception.defaultExceptionHandler : _config$exceptionHand; // 初始化 ES6 模块加载器
_ES6ModuleLoader.default.initLoader(es6ModuleLoader); // 初始化 Reaper
app = (0, _reaper.default)();
app.use((0, _reaperLoading.default)());
app.router(router);
app.use({
onError: exceptionHandler
});
}
function startApp(container) {
if (!app) {
throw new Error('RUI应用还未初始化!');
} // 启动 Reaper
app.start(container);
}
function registerModel(model) {
try {
app.model(model);
} catch (ex) {
console.error(
'AppManager.registerModel(model) \u6CE8\u5165\u6A21\u578B['.concat(model.namespace, ']\u65F6\u51FA\u9519!'),
ex
);
throw ex;
}
}
function unregisterModel(modelNamespace) {
app.unmodel(modelNamespace);
}
//@ sourceMappingURL=AppManager.js.map