如何对我的react component prop API

时间:2019-07-24 00:39:35

标签: reactjs

我有一个包含道具列表的组件,我想确保单元测试能够捕获意外删除的道具而无需遵循弃用过程。

假设设计师决定删除一个名为showAll的道具。我希望我的单元测试能够捕捉到道具被移除的事实。这可能吗?

1 个答案:

答案 0 :(得分:1)

如果道具对您的网络应用很重要,我强烈建议您使用react中的道具类型。

基本上,您可以使用它来强制执行以下操作:

import PropTypes from 'prop-types';

class Greeting extends React.Component { // your component would be here
    render() {
        return (
            <h1>Hello, {this.props.name}</h1>
        );
    }
}

Greeting.propTypes = {
    name: PropTypes.string.required
};

我认为您可以使用Greeting.propTypes

来访问此组件的原型。

因此,我可以看到一个实现类似于以下逻辑工作的测试:

  • 测试您的组件是否包含prop->这表明它至少可用且可能已弃用,但并未完全删除

如果程序员通过不再使用该道具而弃用了该测试,则该测试通过,但是如果程序员完全删除了它,则该测试不会通过。

希望这会有所帮助! :)