import React, { Component } from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; import Icon from '../icon'; import zhCN from '../locale/zh-cn'; import { obj } from '../util'; const noop = () => {}; const { pickOthers } = obj; export default class Inner extends Component { static propTypes = { prefix: PropTypes.string, className: PropTypes.string, closeable: PropTypes.bool, role: PropTypes.string, title: PropTypes.string, placement: PropTypes.oneOf(['top', 'right', 'bottom', 'left']), rtl: PropTypes.bool, onClose: PropTypes.func, locale: PropTypes.object, headerStyle: PropTypes.object, bodyStyle: PropTypes.object, afterClose: PropTypes.func, beforeOpen: PropTypes.func, beforeClose: PropTypes.func, cache: PropTypes.bool, shouldUpdatePosition: PropTypes.bool, }; static defaultProps = { prefix: 'next-', closeable: true, role: 'dialog', onClose: noop, locale: zhCN.Drawer, }; renderHeader() { const { prefix, title, headerStyle } = this.props; const closeLink = this.renderCloseLink(); const headerCls = cx({ [`${prefix}drawer-header`]: true, [`${prefix}drawer-no-title`]: !title, }); return (