UNPKG

@cainiaofe/cn-ui-layout

Version:

- 安装 cone-cli | [Cone-CLI 使用指引](https://alidocs.dingtalk.com/i/nodes/xdqZp24KneBJzvGM6XezJvyb7RA0Nr1E) - `tnpm i -g @alife/cone-cli@latest` - 安装依赖包 - `cone install` - 启动研发 - `cone start`

33 lines 1.49 kB
import { useContext } from 'react'; import classNames from 'classnames'; import isNumber from 'lodash/isNumber'; import isString from 'lodash/isString'; import Context from "../common/context"; // 通过判断容器 props 值,给容器设置class,由 class 控制容器 flex 样式 var useFlexClassNames = function useFlexClassNames(props) { var _classNames; var autoFit = props.autoFit, width = props.width, height = props.height, style = props.style; var _useContext = useContext(Context), prefix = _useContext.prefix; var clsPrefix = prefix + "flex-item"; var validWidth = width || (style === null || style === void 0 ? void 0 : style.width); var validHeight = isNumber(height) || isString(height) && height !== '' ? height : undefined; var validMinHeight = style === null || style === void 0 ? void 0 : style.minHeight; var isDefault = false; var isAutoFit = false; var isValidWidth = false; var isValidHeight = false; if (autoFit) { isAutoFit = true; } else if (validHeight || validMinHeight || validWidth) { isValidHeight = validHeight || validMinHeight; isValidWidth = validWidth; } else { isDefault = true; } return classNames((_classNames = {}, _classNames[clsPrefix + "-default"] = isDefault, _classNames[clsPrefix + "-auto-fit"] = isAutoFit, _classNames[clsPrefix + "-valid-width"] = isValidWidth, _classNames[clsPrefix + "-valid-height"] = isValidHeight, _classNames)); }; export default useFlexClassNames;