jjb-lc-designable
Version:
基于alibaba-designable源码二次封装的表单设计器。
32 lines • 1.13 kB
JavaScript
import React, { useState } from 'react';
import { useField, observer } from 'jjb-lc-formily/react';
import { usePrefix, IconWidget } from 'jjb-lc-designable/react';
import cls from 'classnames';
import './styles.less';
export const CollapseItem = observer(props => {
const prefix = usePrefix('collapse-item');
const field = useField();
const [expand, setExpand] = useState(props.defaultExpand ?? true);
return /*#__PURE__*/React.createElement("div", {
className: cls(prefix, props.className, {
expand
}),
style: props.style
}, /*#__PURE__*/React.createElement("div", {
className: prefix + '-header',
onClick: e => {
e.stopPropagation();
e.preventDefault();
setExpand(!expand);
}
}, /*#__PURE__*/React.createElement("div", {
className: prefix + '-header-expand'
}, /*#__PURE__*/React.createElement(IconWidget, {
infer: "Expand",
size: 10
})), /*#__PURE__*/React.createElement("div", {
className: prefix + '-header-content'
}, field.title)), /*#__PURE__*/React.createElement("div", {
className: prefix + '-content'
}, props.children));
});