import React from 'react';
export default function asyncComponent(importComponent) {
class AsyncComponent extends React.Component {
constructor(props) {
super(props);
this.state = { component: null };
}
componentDidMount() {
importComponent().then(mod => {
this.setState({
component: mod.default ? mod.default : mod,
});
});
}
render() {
const C = this.state.component;
return C ? <C {...this.props} /> : null;
}
}
return AsyncComponent;
}
-
邓超 authoredd233a8b8