有没有人知道在使用null
时让挂载组件返回Enzyme.mount
(或类似内容)的可接受方式?
我有一个包含在 n 高阶组件中的组件。我想实际mount
组件而不是shallow
,因为我想测试componentDidMount
按预期调用的内容。
我的mount函数/测试是这样的:
const component = <ApplicationsShowRoute />;
const { store } = mountSetup(component);
expect(store.getActions()).toEqual([ { type: 'API_REQUEST' } ]);
当我装载它时,我宁愿不必担心渲染的内容(子组件中的错误等)。
export class ApplicationsShowRouteRaw extends Component {
componentDidMount() {
const { uuid } = this.props.match.params;
this.props.fetchShowRoute(uuid);
}
props: Props
render() {
const { application, match } = this.props;
return isEmpty(application) || application.Uuid !== match.params.uuid ? (
<FullPageLoader />
) : (
<ApplicationsShow
application={application}
/>
);
}
}
export const mapStateToProps = (state: Object) => ({
application: getShowRoute(state),
});
export const mapDispatchToProps = (dispatch: Function) => ({
fetchShowRoute: (uuid: string) => dispatch(fetchShowRoute(uuid)),
});
export default connect(
mapStateToProps,
mapDispatchToProps,
)(ApplicationsShowRouteRaw);