加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

reactjs – 如何使用Enzyme等待在Mocha中完成React组件的渲染?

发布时间:2020-12-15 20:41:34 所属栏目:百科 来源:网络整理
导读:我有一个父组件,呈现一个子组件. Child组件首先呈现像’name’这样的独特道具,然后Parent组件呈现常见的道具,例如’type’,并使用React.Children.map将这些道具注入到Child组件中. 我的问题是,Enzyme无法检测到Section组件渲染的常见道具,因此我无法有效地测
我有一个父组件,呈现一个子组件. Child组件首先呈现像’name’这样的独特道具,然后Parent组件呈现常见的道具,例如’type’,并使用React.Children.map将这些道具注入到Child组件中.

我的问题是,Enzyme无法检测到Section组件渲染的常见道具,因此我无法有效地测试是否添加了常见道具.

考试:

const wrapper = shallow(
        <Parent title="Test Parent">
          <div>
            <Child
              name="FirstChild"
            />
          </div>
        </Parent>
      )
//      console.log(wrapper.find(Child).node.props) <- returns only "name" in the object
      expect(wrapper.find(Child)).to.have.prop("commonPropOne")
      expect(wrapper.find(Child)).to.have.prop("commonPropTwo")
      expect(wrapper.find(Child)).to.have.prop("commonPropThree")

注入常??见道具的代码:

const Parent = (props) => (
  <div
    className="group"
    title={props.title}
  >
    { React.Children.map(props.children,child => applyCommonProps(props,child)) }
  </div>
)
你将不得不使用酶的 mount.

当您需要等待组件渲染子项而不是仅渲染像浅的单个节点时,mount会为您提供完整的DOM渲染.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读