yylib-quick-mobile
Version:
yylib-quick-mobile
52 lines (45 loc) • 1.65 kB
JavaScript
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
var React = require('react');
var YYPropTypes = require('./YYPropTypes');
var YYComponent = {
classPrefix: 'yyui',
uiName: 'base',
className: function className(extClass) {
var props = this.props;
var cls = (props.className ? props.className + ' ' : '') + this.classPrefix + '-';
if (this.uiMeta) {
cls += this.uiMeta.name;
} else {
cls += this.uiName;
}
if (extClass) {
return cls + '-' + extClass;
} else {
return cls;
}
},
getDefaultProps: function getDefaultProps() {
var _props = {},
field;
var _meta = this.prototype.uiMeta;
if (_meta && _meta.fields && _meta.fields.length > 0) {
for (var i = 0; i < _meta.fields.length; i++) {
field = _meta.fields[i];
if (!field || field.value === undefined || field.type == YYPropTypes.func && field.value === null) {
continue;
}
_props[field.name] = field.value;
}
return _props;
}
},
render: function render() {
return React.createElement(
'div',
_extends({}, this.props, { className: this.className() }),
this.props.children
);
}
};
module.exports = YYComponent;
;