如何使用酶在函数内调用事件目标-React

时间:2019-03-22 01:54:29

标签: reactjs enzyme

  componentWillUnmount() {
        document.removeEventListener('click', this.handleClickOutside);
    }

    /**
   * Set the wrapper ref
   */
    setWrapperRef(node) {
        this.wrapperRef = node;
    }

    handleClickOutside(event) {
        /* istanbul ignore next */
        if (this.wrapperRef && !this.wrapperRef.contains(event.target)) {
            this.props.clickHandler();
        }
    }

如何调用handleClickOutside函数。我应该如何模仿这里的clickOutside?请帮助

 it('lets click outside and close dropdown', () => {
        const handleClickOutside = sinon.spy();
        expect(handleClickOutside.called).to.be.true;
        wrapper.unmount();
    });

1 个答案:

答案 0 :(得分:1)

假设这是一个HOCrender prop,并将其他组件呈现为childrenthis.props.children)-以下是Jest和{{ 1}}测试,因此可能与您所使用的稍有不同。

components / __ test __ / ClickHandler.test.js

Enzyme