plus-pro-components
Version:
Page level components developed based on Element Plus.
49 lines (45 loc) • 1.17 kB
JavaScript
;
var elementPlus = require('element-plus');
require('../../utils/index.js');
var format = require('../../utils/format.js');
const DisplayComponentMap = {
img: {
component: elementPlus.ElImage,
class: "plus-display-item__image",
hasSlots: true
},
link: {
component: elementPlus.ElLink,
class: "plus-display-item__link",
hasSlots: true
},
tag: {
component: elementPlus.ElTag,
hasSlots: true
},
progress: {
component: elementPlus.ElProgress,
hasSlots: true
},
avatar: {
component: elementPlus.ElAvatar,
hasSlots: true
},
"date-picker": {
component: "span",
format: format.formatDate
},
money: {
component: "span",
format: format.formatMoney
},
code: {
component: "span",
class: "plus-display-item__pre"
}
};
const hasDisplayComponent = (valueType) => Object.keys(DisplayComponentMap).includes(valueType);
const getDisplayComponent = (valueType) => Reflect.get(DisplayComponentMap, valueType) || {};
exports.DisplayComponentMap = DisplayComponentMap;
exports.getDisplayComponent = getDisplayComponent;
exports.hasDisplayComponent = hasDisplayComponent;