Interaction
Universal Apps permet de créer des sites Web interactifs avec PowerShell. Plusieurs applets de commande ont été implémentées pour fournir de la rétroaction à l'utilisateur, mettre à jour des composants et lire l'état des composants.
Presse-papiers
Vous pouvez placer des données de type chaîne dans le presse-papiers de l'utilisateur avec Set-UDClipboard.
New-UDButton -Text 'Clipboard' -OnClick {
Set-UDClipboard -Data 'Hello, there!'
}API
Téléchargements
Vous pouvez démarrer un téléchargement dans le navigateur de l'utilisateur en utilisant Start-UDDownload. En raison de la sécurité des navigateurs Web, l'utilisateur devra poser une action (comme cliquer sur un bouton) pour permettre au téléchargement de se produire. Start-UDDownload n'est pas adapté au téléchargement de gros fichiers.
New-UDButton -Text 'Download' -OnClick {
Start-UDDownload -StringData 'Hello, World!'
}Gestionnaires d'événements
De nombreux composants prennent en charge les gestionnaires d'événements sous forme de blocs de script. Vous pourriez aussi les voir désignés comme des terminaux, car c'est ainsi qu'ils étaient nommés dans Universal Dashboard v2. Ces gestionnaires d'événements vous permettent d'invoquer des scripts PowerShell lorsque certaines actions se produisent sur la page.
Par exemple, vous pourriez avoir un clic de bouton qui appelle un gestionnaire d'événements. Ce bouton affichera un toast lorsqu'on cliquera dessus. Vous pouvez inclure n'importe quelle applet de commande PowerShell valide dans le code du gestionnaire d'événements.
Portée des variables
Les variables sont automatiquement portées dans les gestionnaires d'événements. Vous pourrez accéder aux variables que vous définissez à l'extérieur de la variable dans le gestionnaire d'événements.
Données d'événement
Certains gestionnaires d'événements fourniront des données sous forme de chaîne ou de table de hachage. Cela dépend du gestionnaire d'événements que vous utilisez. Par exemple, le gestionnaire d'événements -OnClick de New-UDButton ne fournit aucune donnée. En revanche, -OnChange de New-UDSelect fournira des données d'événement.
Vous pouvez accéder aux données d'événement en utilisant la variable $Body pour accéder aux données sous forme de chaîne (parfois formatée en JSON) ou sous forme de table de hachage en utilisant la variable $EventData.
Formulaires
Soumettre un formulaire
Vous pouvez forcer la soumission d'un formulaire à l'aide de l'applet de commande Invoke-UDForm. Vous pouvez éventuellement choisir d'appliquer la validation en incluant le paramètre -Validate.
Valider un formulaire
Vous pouvez forcer la validation d'un formulaire en utilisant Test-UDForm.
JavaScript
Vous pouvez invoquer du JavaScript à partir de PowerShell en utilisant l'applet de commande Invoke-UDJavaScript.
API
Toast
Afficher un toast
Vous pouvez utiliser l'applet de commande Show-UDToast pour créer un message toast qui apparaîtra sur la page Web de l'utilisateur final. Cela se produit par l'entremise d'un websocket et le toast s'affichera immédiatement lorsqu'il est appelé.
Afficher comme toast avec une icône
Les toasts prennent en charge les icônes sous forme de chaînes. Vous pouvez utiliser toutes les icônes FontAwesome v5.
Masquer un toast
Masque un toast selon l'ID spécifié.
API
Redirection
Vous pouvez rediriger les utilisateurs vers différentes pages à l'aide de l'applet de commande Invoke-UDRedirect. Cela se produit par l'entremise d'un websocket et la redirection a lieu dès que l'applet de commande est appelée.
Invoke-UDRedirect redirigera automatiquement vers les pages du tableau de bord lorsqu'un chemin relatif est utilisé.
Si vous souhaitez rediriger vers un chemin local à l'extérieur du tableau de bord, vous pouvez utiliser le paramètre -Native.
API
Fenêtre modale
Vous pouvez ouvrir une fenêtre modale à l'aide de l'applet de commande Show-UDModal. Elle s'ouvrira dès que vous l'appellerez. Vous pouvez inclure les composants que vous voulez dans la fenêtre modale.
Apprenez-en plus sur les fenêtres modales ici.
Gérer l'état des composants
Vous pouvez gérer l'état des composants de façon dynamique en utilisant les commandes UDElement.
Obtenir l'état d'un composant
Vous pouvez obtenir l'état d'un élément en utilisant Get-UDElement. L'état sera retourné sous forme de table de hachage. C'est surtout utile pour les composants de saisie.
Définir l'état d'un composant
Vous pouvez également définir l'état d'un composant en utilisant Set-UDElement. Vous devrez spécifier un ID et une table de hachage des propriétés à définir sur le composant. Tous les composants intégrés prennent en charge Set-UDElement.
Supprimer un composant
Vous pouvez supprimer des composants de la page en utilisant Remove-UDElement. Le composant n'apparaîtra plus sur la page.
Ajouter un composant
Ajoutez un composant enfant à un composant parent existant.
Effacer un composant
Vous pouvez supprimer tous les composants enfants d'un composant en utilisant Clear-UDElement.
Recharger un composant
Certains composants prennent en charge le rechargement. Vous pouvez déclencher le rechargement d'un composant en utilisant Sync-UDElement.
Sélectionner un composant
Vous pouvez sélectionner un composant avec Select-UDElement.
Intégration de l'hôte PowerShell
Les tableaux de bord s'intègrent directement à l'hôte PowerShell pour fournir des fonctionnalités basées sur des applets de commande standards.
Read-Host
L'utilisation de l'applet de commande Read-Host fera afficher un dialogue sur le tableau de bord de l'utilisateur. Le texte saisi sera retourné par l'applet de commande.

Get-Credential
L'utilisation de Get-Credential fera afficher un dialogue qui accepte un nom d'utilisateur et un mot de passe. Un objet PSCredential sera retourné par l'applet de commande.

Write-Progress
Les applets de commande qui utilisent le flux de progression ou l'utilisation de l'applet de commande Write-Progress feront afficher un dialogue de progression. La fenêtre contextuelle affichera l'activité, le pourcentage complété et l'opération en cours.

Vous pouvez désactiver l'intégration de Write-Progress en réglant $ProgressPreference à SilentlyContinue.
Demander un choix
Vous pouvez utiliser la fonction $Host.UI.PromptForChoice pour afficher un dialogue à sélection multiple.

Write-Host
Write-Host dans les applis écrira dans l'onglet Journal de la console d'administration pour l'appli. Si vous souhaitez recevoir ces messages de journal dans la console de votre navigateur dans les outils de développement, vous pouvez activer la journalisation de la console dans appsettings.json.
API
Voir aussi
Mis à jour
Ce contenu vous a-t-il été utile ?