Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';t在我的测试中使用jest在装载模式下访问深度子级 版本_Javascript_Reactjs_Jestjs - Fatal编程技术网

Javascript Can';t在我的测试中使用jest在装载模式下访问深度子级 版本

Javascript Can';t在我的测试中使用jest在装载模式下访问深度子级 版本,javascript,reactjs,jestjs,Javascript,Reactjs,Jestjs,“jest cli”:“^22.4.2” “巴别塔笑话”:“^22.4.1” “反应”:“^16.3.2” 总结 我有一个组件: 此组件有一个子组件:,具有按钮角色,并具有onClick功能 当触发onClick功能时,它会影响的另一个子组件,该组件是,触发onClick功能后,它的isOpen道具将从false传递到true 此函数在componentsListenderer的61行调用 遇到的问题是,我无法在我的of 当前错误行为 我无法使用它访问,单击函数,也无法访问组件(也不能访问的任何

“jest cli”:“^22.4.2”

“巴别塔笑话”:“^22.4.1”

“反应”:“^16.3.2”

总结 我有一个组件:

此组件有一个子组件:
,具有按钮角色,并具有
onClick
功能

当触发
onClick
功能时,它会影响
的另一个子组件,该组件是
,触发
onClick
功能后,它的
isOpen
道具将从
false
传递到
true

此函数在
componentsListenderer
61行调用

遇到的问题是,我无法在我的of

当前错误行为 我无法使用它访问
单击
函数,也无法访问
组件(也不能访问
的任何其他子组件)

到底发生了什么 日志只显示我的
,因此我无法测试我的功能,并检查它是否正确地通过
道具
isOpen
。我使用
mount
模式测试我的组件(因为
shallow
模式不会返回深度渲染)

现在,我编写了我的测试(非工作测试)如下

以下是运行jest cmd后我的终端中的当前日志:

console.log src/rsg-components/ComponentsList/tests/ComponentsListRenderer.test.js:57
<BootstrapProvider theme={{...}} injectGlobal={false} utils={{...}}>
  <ThemeProvider theme={{...}}>
    <UtilityProvider utils={{...}} theme={{...}}>
      <div className="UtilityProvider-bsdXya eQdoDP">
        <Styled(ComponentsListRendererUnstyled) items={{...}} theme={{...}} useIsolatedLinks={false}>
          <ComponentsListRendererUnstyled className="sc-bdVaJa kOskEB" items={{...}} theme={{...}} useIsolatedLinks={false} />
        </Styled(ComponentsListRendererUnstyled)>
      </div>
    </UtilityProvider>
  </ThemeProvider>
</BootstrapProvider>
有人知道如何解决这个问题吗?

已解决:

糟糕的是,我没有使用正确的道具
项目

使用以下道具使我的子组件在登录时显示:


项目:[
{
名称:“第一个组件”,
href:“/#第一部分”,
filepath:'first component.md',
标题:错,
级别:0,
内容:假,
崩溃:是的,
鼻涕虫:“介绍”,
组成部分:[],
章节:[],
},
],

<BootstrapProvider theme={{...}} injectGlobal={false} utils={{...}}>
  <ThemeProvider theme={{...}}>
    <UtilityProvider utils={{...}} theme={{...}}>
      <div className="UtilityProvider-bsdXya eQdoDP">
        <Styled(ComponentsListRendererUnstyled) items={{...}} theme={{...}} useIsolatedLinks={false}>
          <ComponentsListRendererUnstyled className="sc-bdVaJa kOskEB" items={{...}} theme={{...}} useIsolatedLinks={false}>
            <Ul>
              <Li>
                <div onClick={() => this.onClick()}>
                  <Link>name</Link>
                </div>
                <Collapse isOpen={false}>
                  content
                </Collapse>
           </Li>
         </Ul>
        </Styled(ComponentsListRendererUnstyled)>
      </div>
    </UtilityProvider>
  </ThemeProvider>
</BootstrapProvider>