UNPKG

@6thquake/react-material

Version:

React components that implement Google's Material Design.

73 lines (61 loc) 1.68 kB
import _extends from "@babel/runtime/helpers/extends"; import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose"; import * as React from 'react'; import PropTypes from 'prop-types'; import { SubMenu as RcSubMenu } from 'rc-menu'; import classNames from 'classnames'; import withStyles from '../styles/withStyles'; const styles = theme => ({}); class SubMenuBar extends React.Component { constructor(...args) { super(...args); this.onKeyDown = e => { this.subMenu.onKeyDown(e); }; this.saveSubMenu = subMenu => { this.subMenu = subMenu; }; } render() { const { rootPrefixCls, className } = this.props; const _this$props = this.props, props = _objectWithoutPropertiesLoose(_this$props, ["classes"]); const theme = this.context.rMMenuTheme; return React.createElement(RcSubMenu, _extends({}, props, { ref: this.saveSubMenu, popupClassName: classNames(`${rootPrefixCls}-${theme}`, className) })); } } SubMenuBar.contextTypes = { rMMenuTheme: PropTypes.string }; SubMenuBar.subMenu = void 0; process.env.NODE_ENV !== "production" ? SubMenuBar.propTypes = { /** * 是否禁用 */ disabled: PropTypes.bool, /** * 唯一标志 */ key: PropTypes.string, /** * 子菜单项值 */ onTitleClick: PropTypes.func, /** * 点击子菜单标题,参数 ({ key, domEvent }) */ title: PropTypes.oneOfType([PropTypes.string, PropTypes.element]) } : void 0; SubMenuBar.defaultProps = { disabled: false }; SubMenuBar.isSubMenu = true; export default withStyles(styles, { name: 'RMSubMenuBar' })(SubMenuBar);