如何在组件测试中触发组件中的if(this.props!== nextProps)接收props?

时间:2018-11-16 01:15:00

标签: reactjs unit-testing if-statement triggers react-lifecycle

我是React单元测试的新手。我对if语句有疑问。我需要测试componentwillreceiveprops的功能,我知道我可以使用spy = sinon.stub(component.props,“ componentwillreceiveprops”)方法来调用间谍。

但是在我的组件中,有一个if语句,例如

componentwillreceiveprops(nextProps){
    if(this.props.name!==nextProps.name) {
        this.setState({
            oldstate: newstate
        })
    }
}

我可以调用componentWillReceiveProps函数。如果删除if语句,则可以调用setState函数。但是我组件中包含的if语句在运行单元测试时不会被调用。有什么方法可以使if语句调用吗?预先谢谢你。

1 个答案:

答案 0 :(得分:1)

componentwillreceiveprops应该是componentWillReceiveProps