import React from 'react';
// 创建高阶组件
const withExtraProps = (extraProps) => (WrappedComponent) => {
return (props) => {
return <WrappedComponent {...props} {...extraProps} />;
};
};
// 被包装的组件
const MyComponent = ({ text, extraText }) => {
return (
<div>
<p>{text}</p>
<p>{extraText}</p>
</div>
);
};
// 使用高阶组件包装MyComponent
const EnhancedComponent = withExtraProps({ extraText: '这是额外的文本' })(MyComponent);
const App = () => {
return (
<div>
<EnhancedComponent text="这是原始文本" />
</div>
);
};
export default App;