oak-general-business/lib/utils/message/index.mp.js

51 lines
1.5 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var MessageType = {
info: 'info',
success: 'success',
warning: 'warning',
error: 'error',
};
function getInstance(context, selector) {
if (selector === void 0) { selector = '#oak-message'; }
var instance = context.selectComponent(selector);
if (!instance) {
return Promise.reject(new Error('未找到Message组件, 请检查selector是否正确'));
}
return instance;
}
function showMessage(options, theme) {
if (theme === void 0) { theme = MessageType.info; }
var options2 = tslib_1.__assign({}, options);
var context = options2.context;
delete options.context;
var instance = getInstance(context);
instance.resetData(function () {
instance.setData(Object.assign({ theme: theme }, options), instance.show);
});
return instance;
}
var Message = {
info: function (options) {
return showMessage(options, MessageType.info);
},
success: function (options) {
return showMessage(options, MessageType.success);
},
warning: function (options) {
return showMessage(options, MessageType.warning);
},
error: function (options) {
return showMessage(options, MessageType.error);
},
hide: function (context) {
var instance = getInstance(context);
if (!instance) {
return;
}
instance.hide();
},
};
exports.default = Message;