JavaScript eslint 错误 - 不要在循环下创建函数
JavaScript eslint error - Don't make functions under loop
我正在使用 cucumber framework
在 JavaScript (NodeJS) 中编写自动化测试脚本。我的步骤定义之一需要调用 API 并读取 JSON
数据。
在下面的代码中,ptRecords 是 JSON 响应块,其中我正在读取一个名为 jsonElement1
和 jsonElement2
的元素,这两个元素重复多次,因此我正在读取所有事件..
我的下面代码工作正常,但是当我 运行 lint 时,它抛出 lint 错误,说不要在循环语句下创建函数。
能否请您告知如何调用这些外部循环并获得响应..
我需要这样做直到 K 循环结束
for (let k = 0; k < 5; k += 1) {
ptRecords.forEach((jsonArrObj1) => {
const jsonArrObjTagValue = objectHelpers.walk(jsonArrObj1.jsonElement1);
acc.push(jsonArrObjTagValue1);
});
ptRecords.forEach((jsonArrObj2) => {
const jsonArrObjTagValue = objectHelpers.walk(jsonArrObj2.jsonElement2);
acc.push(jsonArrObjTagValue2);
});
};
您或许可以更改此设置:
for (let k = 0; k < 5; k += 1) {
// ...
}
进入:
[0, 1, 2, 3, 4].forEach(k => {
// ...
});
或者您可以使用一些快捷方式来自动生成数组:
[...Array(5).keys()].forEach(k => {
// ...
});
或:
[...Array(5)].forEach((v, k) => {
// ...
});
或者如果您知道自己在做什么,有时您最好的选择是禁用特定规则:
// eslint-disable-line no-loop-func
我正在使用 cucumber framework
在 JavaScript (NodeJS) 中编写自动化测试脚本。我的步骤定义之一需要调用 API 并读取 JSON
数据。
在下面的代码中,ptRecords 是 JSON 响应块,其中我正在读取一个名为 jsonElement1
和 jsonElement2
的元素,这两个元素重复多次,因此我正在读取所有事件..
我的下面代码工作正常,但是当我 运行 lint 时,它抛出 lint 错误,说不要在循环语句下创建函数。
能否请您告知如何调用这些外部循环并获得响应..
我需要这样做直到 K 循环结束
for (let k = 0; k < 5; k += 1) {
ptRecords.forEach((jsonArrObj1) => {
const jsonArrObjTagValue = objectHelpers.walk(jsonArrObj1.jsonElement1);
acc.push(jsonArrObjTagValue1);
});
ptRecords.forEach((jsonArrObj2) => {
const jsonArrObjTagValue = objectHelpers.walk(jsonArrObj2.jsonElement2);
acc.push(jsonArrObjTagValue2);
});
};
您或许可以更改此设置:
for (let k = 0; k < 5; k += 1) {
// ...
}
进入:
[0, 1, 2, 3, 4].forEach(k => {
// ...
});
或者您可以使用一些快捷方式来自动生成数组:
[...Array(5).keys()].forEach(k => {
// ...
});
或:
[...Array(5)].forEach((v, k) => {
// ...
});
或者如果您知道自己在做什么,有时您最好的选择是禁用特定规则:
// eslint-disable-line no-loop-func