IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Sélectionner un dossier avec showDirectoryPicker


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 323
    Par défaut Sélectionner un dossier avec showDirectoryPicker
    Bonjour,

    j'aimerai afficher sur un texte le répertoire en sélectionner un dossier sur le bureau.

    mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    async function GetDir() {
    	try {
    		const dirHandle = await window.showDirectoryPicker({startIn: 'desktop'});
            if(dirHandle) {
    			document.getElementById("Folder").value = dirHandle;
    		}
    	} catch (error) {
    		alert('Erreur lors de la sélection du répertoire.');
    	}
    }
     
    document.getElementById('FolderButton').addEventListener("click", GetDir);
    il m'afficher un erreur lors de la sélection du répertoire dans alert. comment puis-je faire pour pour sélectionner un dossier en afficher son répertoire dans un texte qui s'appelle dans Folder?

  2. #2
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 494
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 494
    Par défaut
    developer.mozilla.org/en-US/docs/Web/API/Window/showDirectoryPicker d'apres la doc, ce n'est valable qu'en HTTPS, et surtout... c'est exeperimental, uniquement supporte par chrome.

    sinon, je te conseil de passer par des console.log() et non des alert() pour debugger.

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    const dirHandle = await window.showDirectoryPicker();
    console.log(dirHandle); // FileSystemDirectoryHandle {kind: 'directory', name: 'test'}
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  3. #3
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 323
    Par défaut
    bonjour Doksuri,

    merci d'avoir répondu. Voici ce que ça donne dans console.log :
    Nom : Capture d’écran 2024-05-12 223655.png
Affichages : 330
Taille : 7,2 Ko

    avez-vous une solution pour sélectionner le dossier en affichent le répertoire du dossier dans un texte?

  4. #4
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 494
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 494
    Par défaut
    je vois dans ton screenshot, que tu utilises firefox ... ce n'est pas compatible firefox
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  5. #5
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 323
    Par défaut
    je trouver un API qui fonctionne avec Firefox avec showDirectoryPicker.

    voici le code modifier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    async function GetDir() {
    	const supportsFileSystemAccess = "showDirectoryPicker" in window && (() => {
    		try {
    			return window.self === window.top;
            } catch {
                return false;
            }
        })();
    	if (supportsFileSystemAccess) {
    		try {
    			const directoryHandle = await window.showDirectoryPicker({startIn: 'desktop'});
    			document.getElementById("Folder").value = directoryHandle.value
    		} catch (err) {
    			if (err.name !== "AbortError") {
    				alert(err.name, err.message);
    		    }
            }
    	    return directoryHandle;
        }
    	return new Promise((resolve) => {
        const input = document.createElement('input');
        input.type = 'directories';
        input.webkitdirectory = true;
        if ('showPicker' in HTMLInputElement.prototype) {
          input.showPicker();
        } else {
          input.click();
        }
      });
    }
    le lien du code original : https://web.dev/patterns/files/open-a-directory?hl=fr

    est-il possible d'avoir le nom destination du dossier dans un texte?

  6. #6
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 323
    Par défaut
    Bonsoir,

    j'avais trouver ceci aussi : https://github.com/nwutils/nw-progra...-folder-select

    le code ne fonctionne pas chez moi avec require.

    mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import { openFolderExplorer } from './folder-select/index.js';
     
    function callback(selection) {
      if (selection) {
        document.getElementById("Folder").value = selection;
      } else {
        alert('Vous avez annulé la destination du dossier.');
      }
    }
     
    function GetFolder() {
        openFolderExplorer(window, {directory: 'Desktop', title: 'Sélectionnez un dossier dans lequel stocker le fichier.'}, callback);
    }
    button :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('FolderButton').addEventListener("click", GetFolder);
    j'arrive pas à obtenir le application folder en sélectionnent le dossier. avez-vous une solution comment puis-je avoir le folder (voir image en dessous)?
    Nom : win.png
Affichages : 324
Taille : 6,7 Ko

Discussions similaires

  1. [XL-2003] selectionner un dossier et l'utiliser avec LookIn
    Par hidodu dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/01/2012, 14h41
  2. [JFileChooser] sélectionner un dossier
    Par hunter dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 20/05/2011, 17h23
  3. Doublons de dossier avec samba
    Par jesus144 dans le forum Réseau
    Réponses: 1
    Dernier message: 20/12/2005, 15h30
  4. Suivre un lien .lnk ou sortir du dossier avec cygwin
    Par ThanosT dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 01/10/2005, 10h57
  5. Réponses: 3
    Dernier message: 10/02/2005, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo