Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.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 对具有多个对象的数组进行迭代_Javascript_Jquery_Html_Reactjs_Mocha.js - Fatal编程技术网

Javascript 对具有多个对象的数组进行迭代

Javascript 对具有多个对象的数组进行迭代,javascript,jquery,html,reactjs,mocha.js,Javascript,Jquery,Html,Reactjs,Mocha.js,这里的格式很好…在堆栈中尝试过,但效果不是很好 我是新来摩卡的 现在它正在处理数组中的单个对象 如何使其与阵列中的多个对象一起工作 我不知道如何迭代它 在下面提供我的代码 阵列中的单个对象: shallowRenderer.render(<SportsList disclosures ={[ 'id': 'foo', 'text': 'car racing' ]} />); shallwrender.render(); 阵列中的多个对象: shallowRenderer.re

这里的格式很好…在堆栈中尝试过,但效果不是很好

  • 我是新来摩卡的
  • 现在它正在处理数组中的单个对象
  • 如何使其与阵列中的多个对象一起工作
  • 我不知道如何迭代它
  • 在下面提供我的代码
  • 阵列中的单个对象:

    shallowRenderer.render(<SportsList  disclosures ={[ 'id': 'foo', 'text': 'car racing' ]} />);
    
    shallwrender.render();
    
  • 阵列中的多个对象:

  • shallowRenderer.render(<SportsList  disclosures ={[ 'id': 'foo', 'text': 'car racing' ]} />);
    

shallwrender.render();
从“chai”导入{expect};
从“React”导入React;
从“react addons test utils”导入TestUtils;
从“../../src/components/footer/disclosure list.jsx”导入运动列表;
从“../test-utils/dom.js”导入initializeJsDom;
从“运动css网格”导入{getGridLayoutClasses};
描述('公开列表的浅层渲染器测试',函数(){
让shallwrender=TestUtils.createRenderer();
它('应该正确呈现',()=>{
shallewrender.render();
//shallewrender.render();
让sportsOutputElement=shallwrender.getRenderOutput();
让sportsTitle=sportsOutputElement.props.children[0].key;
让text=sportsOutputElement.props.children[0].props.dangerouslySetinerHTML.\uu html;
//单个值的结果成功
期望值(sportsTitle)。等于('100');
//单个值的结果成功
expect(text).equal(‘赛车’);
});
});
json结构
RenderElement-多个数组-->
{
“类型”:“div”,
“键”:空,
“ref”:空,
“道具”:{
“类名”:“页面页脚披露”,
“儿童”:[{
“类型”:“p”,
“密钥”:“100”,
“ref”:空,
“道具”:{
“危险的溶血性紫杉醇”:{
“\uuu html”:“你好,世界”
}
},
“_owner”:空,
“_存储”:{}
}, {
“类型”:“p”,
“密钥”:“10”,
“ref”:空,
“道具”:{
“危险的溶血性紫杉醇”:{
“\uuu html”:“你好,世界”
}
},
“_owner”:空,
“_存储”:{}
}, {
“类型”:“p”,
“密钥”:“100”,
“ref”:空,
“道具”:{
“危险的溶血性紫杉醇”:{
“\uuu html”:“你好,世界”
}
},
“_owner”:空,
“_存储”:{}
}]
},
“_owner”:空,
“_存储”:{}
}√
应正确渲染(3毫秒)

使用
expect
chai
可以使用eql测试对象的深度相等性

expect(sportsOutputElement.props.children).to.eql([ {id: 100, text: 'car racing'}, {id: 10, text: 'hello vworld'}, {id: 100, text: 'car racing'} ]);

谢谢你的消息…你能更新我的代码吗…它很混乱用上面的行替换代码中以
//单值result successfull
开头的四行谢谢你的回复…但是我得到一个错误断言错误:预期[Array(3)]与[Array(3)]完全相等+预期-现实似乎阵列可能出现故障。如果是这种情况,请使用
deep.include.members
而不是像这样
eqls
expect(sportsOutputElement.props.children).to.deep.include.members([{id:100,text:'car racing'},{id:10,text:'hello vworld'},{id:100,text:'car racing'}])我仍然得到另一个错误断言错误:预期[Array(3)]是[Array(3)的超集