导出没有装饰器的纯功能组件

Lui*_*gan 1 javascript unit-testing reactjs jestjs redux

我正在尝试导出没有装饰器的组件(在这种情况下为connect()),以使用进行单元测试jest

因此,我该怎么做:

import React, { Component } from 'react';
import { connect } from 'react-redux';

export class Header extends Component {
    render(){
        return <pre>Header</pre>
    }
}

export default connect()(Header);
Run Code Online (Sandbox Code Playgroud)

使用此组件(开始时无法导出,仍然会导出连接的组件)

export let Header = props => {
    render(){
        return <pre>Header</pre>
    }
}

Header = connect()(Header);

export default Header;
Run Code Online (Sandbox Code Playgroud)

Rad*_*ina 5

对连接的组件使用其他变量,如下所示:

export let Header = props => {
    render(){
        return <pre>Header</pre>
    }
}

let HeaderConnected = connect()(Header);

export default HeaderConnected;
Run Code Online (Sandbox Code Playgroud)

现在您Header无需使用即可自由导入connect()