Javascript Cypress能否识别默认的导出功能?
Cypress似乎无法正确识别默认导出的函数。例如:Javascript Cypress能否识别默认的导出功能?,javascript,ecmascript-6,cypress,es6-modules,Javascript,Ecmascript 6,Cypress,Es6 Modules,Cypress似乎无法正确识别默认导出的函数。例如: export default function (array) { const randomValue = array[Math.floor(Math.random() * array.length)]; return randomValue; } 从“../../../../../support/index”导入randomValueFromArray randomValueFromArray([1, 2]).then((valu
export default function (array) {
const randomValue = array[Math.floor(Math.random() * array.length)];
return randomValue;
}
从“../../../../../support/index”导入randomValueFromArray代码>
randomValueFromArray([1, 2]).then((value) => {
cy.log('VALUE', value);
});
Cypress runner错误:
(0,_index.default)不是cypress中的函数
您可以在support/commands.js
文件中将此函数添加为自定义命令:
Cypress.Commands.add("randomValueFromArray", (array) => { return array[Math.floor(Math.random() * array.length)]; })
&在规范中使用它确保在support/index.js
cy.randomValueFromArray([1,2,5,6,3,8,9,2,5,7]).then((value) => {
cy.log('VALUE', value);
})
我们能够以这种方式使其工作:
function randomValueFromArray(array) {
const randomValue = array[Math.floor(Math.random() * array.length)];
return randomValue;
}
module.exports = {
randomValueFromArray,
};
然后使用以下命令导入并调用它:
import { randomValueFromArray } from '../../../../../support/index';
let warehouse;
warehouse = randomValueFromArray([1, 2]);
我们将其作为命令使用,但现在还需要在浏览器外部运行的文件中使用它,因此cy
命令不可用。@请检查此项。它可能会有帮助。不能复制,对我来说正确。但是randomValueFromArray([1,2])。then()
无效,因为您的函数不返回承诺。