diff --git a/packages/pro-layout/src/hooks.ts b/packages/pro-layout/src/hooks.ts index 11bf6b7..691931d 100644 --- a/packages/pro-layout/src/hooks.ts +++ b/packages/pro-layout/src/hooks.ts @@ -1,4 +1,4 @@ -import _ from 'lodash'; +import last from 'lodash/last'; import { useContext, useMemo } from 'react'; import { useLocation } from 'react-router'; import { RouteContext } from './layouts/RouteLayout'; @@ -32,6 +32,6 @@ export const useRouteMeta = (inherit = true): Partial => { return prev; }, {}); } - return _.last(routes)?.meta ?? {}; + return last(routes)?.meta ?? {}; }, [inherit, routes]); }; diff --git a/packages/pro-layout/src/layouts/BasicLayout.tsx b/packages/pro-layout/src/layouts/BasicLayout.tsx index 01e269c..79f9cd3 100644 --- a/packages/pro-layout/src/layouts/BasicLayout.tsx +++ b/packages/pro-layout/src/layouts/BasicLayout.tsx @@ -1,6 +1,6 @@ /* eslint-disable no-param-reassign */ import { Layout, Menu } from 'antd'; -import _ from 'lodash'; +import isEmpty from 'lodash/isEmpty'; import React, { useMemo } from 'react'; import { useHistory, useLocation } from 'react-router-dom'; import { useMatchedRoutes } from '../hooks'; @@ -13,7 +13,7 @@ const { SubMenu, Item: MenuItem } = Menu; const renderMenu = (routes: RouteConfig[]) => { return routes.map((m) => { - if (!_.isEmpty(m.routes)) { + if (!isEmpty(m.routes)) { return ( ({ m.routes = undefined; return true; } - if (!_.isEmpty(m.routes)) { + if (!isEmpty(m.routes)) { m.routes = filterNode(m.routes!); // 子节点为空时,是否隐藏父节点 return m.routes.length; @@ -121,7 +121,7 @@ function BasicLayout({ if (cloneNode.component) { cloneNode.component = withAuthorized(cloneNode.component, cloneNode.meta); } - if (!_.isEmpty(cloneNode.routes)) { + if (!isEmpty(cloneNode.routes)) { cloneNode.routes = wrapNode(cloneNode.routes!); } diff --git a/packages/pro-layout/src/layouts/BlankLayout.tsx b/packages/pro-layout/src/layouts/BlankLayout.tsx index 8f4ea75..42aeb0e 100644 --- a/packages/pro-layout/src/layouts/BlankLayout.tsx +++ b/packages/pro-layout/src/layouts/BlankLayout.tsx @@ -1,4 +1,4 @@ -import _ from 'lodash'; +import isEmpty from 'lodash/isEmpty'; import React from 'react'; import { Redirect, Route, Switch } from 'react-router-dom'; import type { RouteConfig } from '../type'; @@ -45,7 +45,7 @@ const BlankLayout: React.FC = (props) => { childComp && React.createElement(childComp), ); } - if (!_.isEmpty(routes)) { + if (!isEmpty(routes)) { return ; } }} diff --git a/packages/pro-layout/src/layouts/PageContainer.tsx b/packages/pro-layout/src/layouts/PageContainer.tsx index 77cbb01..b272e90 100644 --- a/packages/pro-layout/src/layouts/PageContainer.tsx +++ b/packages/pro-layout/src/layouts/PageContainer.tsx @@ -1,11 +1,11 @@ import type { PageHeaderProps, TabPaneProps, TabsProps } from 'antd'; import { Breadcrumb, PageHeader, Space, Spin, Tabs } from 'antd'; -import _ from 'lodash'; +import classNames from 'classnames'; +import last from 'lodash/last'; import React from 'react'; import { Link } from 'react-router-dom'; import { useMatchedRoutes } from '../hooks'; import './PageContainer.less'; -import classNames from 'classnames'; const { TabPane } = Tabs; @@ -70,7 +70,7 @@ const PageContainer: React.FC = ({ ))} } - title={title ?? _.last(crumbs)?.name} + title={title ?? last(crumbs)?.name} footer={ tabList && ( diff --git a/packages/pro-layout/src/utils.ts b/packages/pro-layout/src/utils.ts index 8740c62..25f2b19 100644 --- a/packages/pro-layout/src/utils.ts +++ b/packages/pro-layout/src/utils.ts @@ -1,4 +1,4 @@ -import _ from 'lodash'; +import isEmpty from 'lodash/isEmpty'; import type { RouteConfig } from './type'; /** @@ -25,7 +25,7 @@ export function getRouteConfigByPath(routes: RouteConfig[], path: string): Route if (route.path === path) { return route; } - if (!_.isEmpty(route.routes)) { + if (!isEmpty(route.routes)) { const node = getRouteConfigByPath(route.routes!, path); if (node) { @@ -46,7 +46,7 @@ export function getFirstLeafNode(routes: RouteConfig[]): RouteConfig | undefined if (!firstNode) { return firstNode; } - if (_.isEmpty(firstNode.routes)) { + if (isEmpty(firstNode.routes)) { return firstNode; } return getFirstLeafNode(firstNode.routes!); @@ -74,7 +74,7 @@ export function getRouteNode( return result; } result.push(route); - if (_.isEmpty(route.routes)) { + if (isEmpty(route.routes)) { return result; }