Maison  >  Questions et réponses  >  le corps du texte

Gérer le cas où il n'y a aucun élément d'entrée dans le DOM lors de la sélection de fichiers à l'aide de la méthode Cypress

<p>Lorsque vous cliquez sur le bouton de téléchargement, utilisez la méthode ci-dessous pour ouvrir le navigateur de fichiers. Autant que je sache, aucun élément n'est ajouté au DOM sauf si vous l'attachez explicitement à l'élément DOM. </p> <pre class="brush:js;toolbar:false;">const inputEl = document.createElement("input"); inputEl.type = "fichier" ; inputEl.multiple = vrai ; inputEl.click(); inputEl.onchange = (e) => ≪/pré> <p>Est-il possible de sélectionner des fichiers en utilisant cette méthode dans Cypress ? <code>selectFile</code> nécessite que l'élément <code>input</code> soit dans le DOM et que le lien le suive. Sinon, je devrai utiliser des éléments d'entrée cachés. </p>
P粉697408921P粉697408921381 Il y a quelques jours409

répondre à tous(1)je répondrai

  • P粉832490510

    P粉8324905102023-09-06 16:45:08

    Résolu. Je ne peux pas le faire à Cypress. J'ai utilisé une variable d'environnement "DEVELOPMENT=1" pour ajouter l'élément d'entrée au DOM, mais uniquement pendant les tests.

    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) => { ... }
    
    

    répondre
    0
  • Annulerrépondre