导出更高阶的组件而不导出默认'

时间:2017-06-01 19:13:14

标签: reactjs higher-order-components

如果用户点击菜单外,我正在使用react-click-outside隐藏下拉菜单。通常,我会像这样导出组件:

export default enhanceWithClickOutside(Dropdown);

但是,在这种情况下,我想导出组件

export { enhancedWithClickOutside(Dropdown) };

但这显然不起作用。有没有办法使用{}导出并应用更高阶的组件功能?

1 个答案:

答案 0 :(得分:12)

export class Dropdown extends React.component {
  ...
}

export const EnhancedDropdown = enhanceWithClickOutside(Dropdown);

其他地方

import { Dropdown, EnhancedDropdown } from 'path/to/Dropdown';