mirror of
https://github.com/PeWu/topola-viewer.git
synced 2025-12-23 18:50:04 +00:00
Refactored MenuItem from class-based to functional component
This commit is contained in:
parent
e444e25177
commit
9d8bd01a14
@ -1,4 +1,3 @@
|
||||
import * as React from 'react';
|
||||
import {
|
||||
Menu,
|
||||
Dropdown,
|
||||
@ -15,21 +14,17 @@ interface Props {
|
||||
menuType?: MenuType;
|
||||
}
|
||||
|
||||
export class MenuItem extends React.Component<
|
||||
Props & MenuItemProps & DropdownItemProps
|
||||
> {
|
||||
render() {
|
||||
const newProps = {...this.props};
|
||||
// Remove menuType from props to avoid error message in the console.
|
||||
delete newProps.menuType;
|
||||
return (
|
||||
<>
|
||||
{this.props.menuType === MenuType.Menu ? (
|
||||
<Menu.Item {...newProps}>{this.props.children}</Menu.Item>
|
||||
) : (
|
||||
<Dropdown.Item {...newProps}>{this.props.children}</Dropdown.Item>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
export function MenuItem(props: Props & MenuItemProps & DropdownItemProps) {
|
||||
const newProps = {...props};
|
||||
// Remove menuType from props to avoid error message in the console.
|
||||
delete newProps.menuType;
|
||||
return (
|
||||
<>
|
||||
{props.menuType === MenuType.Menu ? (
|
||||
<Menu.Item {...newProps}>{props.children}</Menu.Item>
|
||||
) : (
|
||||
<Dropdown.Item {...newProps}>{props.children}</Dropdown.Item>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user