我有一个属性名称items:
,它等待array
列表。 此代码块的正常和运行实现如下;
// This usage works perfectly with `getFirstTest()` function
// And creates a list of Array fine!
harness.start(
{
group: 'UI Tests',
testClass: Siesta.Test.ListClass,
items: [
{
group: 'First Group',
items: [
getFirstTest('Foo'),
getFirstTest('Bar'),
getFirstTest('Alpha'),
getFirstTest('Beta'),
getFirstTest('Zet')
]
}
]
}
);
但是您会注意到有很多迭代语句,因此我尝试使用forEach
和for
循环将getFirstTest()
函数声明为动态功能,但我无法呈现array
列表如上所述,它不会抛出任何问题,但无法创建列表!
此外,我还需要能够在getFirstTest
函数上设置几个parameters
:
例如:getFirstTest('Foo', 'SecondParam')
harness.start(
{
group: 'UI Tests',
testClass: Siesta.Test.ListClass,
items: [
{
group: 'First Group',
items: this.firstGrpSubmodules
}
]
}
);
function firstGrpSubmodules () {
let implementedCases = [
'Foo', 'Bar', 'Alpha', 'Beta', 'Zet'
];
// I've tried several ways to achive but couldn't
// Usage 1: The for loop
// for (let i=0; i<implementedCases.length; i++) {
// let submodules = implementedCases[i];
//
// getFirstTest(submodules);
// }
// Usage 2: forEach
// implementedCases.forEach(function(submodule) {
// getFirstTest(submodule);
// });
}
我在这里缺少什么以及如何实现第二次实施? 提前感谢!
使用Array.prototype.map
:
harness.start({
group: 'UI Tests',
testClass: Siesta.Test.ListClass,
items: [
{
group: 'First Group',
items: ['Foo', 'Bar'].map(getSalesTest),
}
]
});