@fle-ui/pro-layout
Version:
@fle-ui/pro-layout
44 lines (39 loc) • 1.81 kB
JavaScript
import "@fle-ui/next/es/breadcrumb/style";
import _Breadcrumb from "@fle-ui/next/es/breadcrumb";
import "@fle-ui/next/es/config-provider/style";
import _ConfigProvider from "@fle-ui/next/es/config-provider";
import React, { useContext } from 'react';
import { useHistory } from 'react-router-dom';
import classnames from 'classnames';
import './index.less';
var ProHeader = function ProHeader(props, ref) {
var history = useHistory();
var prefixCls = props.prefixCls,
className = props.className,
style = props.style,
breadcrumb = props.breadcrumb;
var context = useContext(_ConfigProvider.ConfigContext);
var getPrefixCls = prefixCls !== null && prefixCls !== void 0 ? prefixCls : context.getPrefixCls('pro');
var baseClassName = "".concat(getPrefixCls, "-header");
var breadcrumbList = typeof breadcrumb === 'boolean' ? [] : breadcrumb || [];
if (!(breadcrumbList === null || breadcrumbList === void 0 ? void 0 : breadcrumbList.length)) {
return null;
}
var handleClick = function handleClick(breadcrumbItem) {
history.push(breadcrumbItem.path);
};
return /*#__PURE__*/React.createElement("div", {
style: style,
ref: ref,
className: classnames(baseClassName, className)
}, /*#__PURE__*/React.createElement(_Breadcrumb, null, breadcrumbList === null || breadcrumbList === void 0 ? void 0 : breadcrumbList.map(function (breadcrumbItem, breadcrumbIndex) {
return /*#__PURE__*/React.createElement(_Breadcrumb.Item, {
key: breadcrumbItem.path
}, breadcrumbIndex === breadcrumbList.length - 1 ? breadcrumbItem.title : /*#__PURE__*/React.createElement("a", {
onClick: function onClick() {
handleClick(breadcrumbItem);
}
}, breadcrumbItem.title));
})));
};
export default /*#__PURE__*/React.forwardRef(ProHeader);