当点击上传按钮时,使用下面的方法打开文件浏览器。据我所知,除非你显式地将它附加到DOM元素上,否则不会向DOM添加任何元素。
const inputEl = document.createElement("input");
inputEl.type = "file";
inputEl.multiple = true;
inputEl.click();
inputEl.onchange = (e) => { ... }
在Cypress中是否可以使用这种方法选择文件?selectFile需要input元素在DOM中,并且链接在其后。否则,我将不得不使用隐藏的input元素。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
已解决。在Cypress中无法做到。我使用了一个环境变量"DEVELOPMENT=1"来将输入元素附加到DOM中,但仅在测试期间。
const inputEl = document.createElement("input"); if (process.env.DEVELOPMENT) { document.getElementById("root").appendChild(inputEl); } inputEl.type = "file"; inputEl.multiple = true; inputEl.click(); inputEl.onchange = (e) => { ... }