Créer un raccourci clavier sur Salesforce : un cas d’usage pratique sur LWC

Par 

6 minutes de lecture
Résoudre des problèmes

Introduction

En tant que développeur Salesforce, vous avez peut-être été confronté à une demande de création d’un raccourci clavier comme fonctionnalité spécifique sur votre composant LWC, mais vous ne savez pas par où commencer.

Les ressources pour créer un tel raccourci clavier peuvent être difficiles à trouver et vous ne voulez pas perdre du temps à chercher des solutions complexes. Heureusement, cet article est là pour vous aider !

Tout d’abord nous allons vous montrer comment créer un raccourci clavier personnalisé from scratch sur votre composant LWC en suivant un exemple concret étape par étape.

Même si vous êtes novice en développement Salesforce, cet article très facile à suivre vous permettra d’ajouter facilement cette fonctionnalité très utile à vos utilisateurs. Ainsi vous gagnez du temps et optimisez votre productivité.

Quels types de raccourcis ?

Voici pour nous deux méthodes qui peuvent vous faciliter l’implémentation de raccourcis au niveau d’une page HTML.

Accesskey

Premièrement, Accesskey est un attribut HTML qui met en évidence un élément de la page et qui simule un clic sur l’élément en question.

Copy to Clipboard

 

Keyup ou keydown

Sans conteste la partie qui nous intéresse le plus ! Grâce aux événements Keyup et Keydown, vous pouvez rendre votre page plus rapide en implémentant des raccourcis qui feront gagner du temps aux utilisateurs.

Copy to Clipboard

Ce bout de code, ci-dessus, vous permet d’afficher sur la console du navigateur la touche que vous tapez sur votre clavier.

Pour aller plus loin, n’hésitez pas à consulter les liens ci-dessous :

JavaScript Keyboard Events

Element: keydown event

 

Implémentation

Dans cet exemple, nous allons implémenter un raccourci clavier pour les flows. Le but est simple, dès que l’utilisateur clique « CTRL + S » au niveau d’un écran de flow, il passe à l’écran suivant ou termine le flow si c’est le dernier écran du flow.

saveLwc.html

Copy to Clipboard

 

saveLwc.js

Copy to Clipboard

En premier lieu, au démarrage du composant LWC, avec la méthode connectedCallback, il faut ajouter un événement keydown à l’élément body de la page qui exécute la méthode save lorsque l’utilisateur appuie sur une touche.

Ensuite, la méthode save vérifie si l’utilisateur a appuyé sur la touche « ctrl + s » (ou « cmd + s » sur Mac) en utilisant les propriétés ctrlKeypour windows, metaKey pour Mac et key de l’événement clavier.

  • D’abord il est important d’empêcher l’action par défaut du navigateur (généralement celle d’enregistrer la page) avec e.preventDefault(), mais aussi de vérifier si une des deux actions « NEXT » ou « FINISH » sont disponibles dans le tableau availableActions.
  • Puis il faut créer un événement de navigation en utilisant FlowNavigationNextEvent ou FlowNavigationFinishEvent et déclencher l’événement du flow en utilisant dispatchEvent.

Enfin, la méthode disconnectedCallback est exécutée lorsque le composant est supprimé de la page, ainsi, elle enlève l’écouteur d’événements ajouté dans la méthode connectedCallback.

 

saveLwc.js-meta.xml

Copy to Clipboard

 

Maintenant, il ne vous reste plus qu’à utiliser ce composant LWC sur chaque écran de flux où vous souhaitez utiliser ce raccourci clavier pour que cela fonctionne. 🥳

Conclusion

En somme, les raccourcis clavier permettent de gagner du temps et de l’efficacité !  Ils permettent aux utilisateurs d’accéder rapidement à des fonctionnalités spécifiques via des combinaisons de touches.

Également une autre idée intéressante est d’ajouter une fonctionnalité qui permet à l’utilisateur de télécharger les données du composant lightning-datatable. Pour ce faire il utilise le raccourci clavier « CTRL + S » et ainsi facilite la récupération des données sous forme de fichier CSV.

Vous pouvez consulter mes articles ici ou les autres articles du blog. ici

A lire également sur le blog

Copado

Introduction à Copado

Vous aimeriez avoir une idée de ce qu’est Copado, savoir ce qu’apporte l’outil et le tester éventuellement ? Peut-être souhaiteriez-vous aussi connaître les étapes pour se former dessus ? …
avril 2024
Conseils
Interview-Romain-Quijal-Texeï

Portrait de Texiens : Romain Quijal, Développeur chez Texeï

👋 Découvrez le portrait de Romain Quijal, Développeur chez Texeï ! 🚀 Arrivé il y a un peu plus d’un an chez Texeï, Romain une étoile montante dans l’univers …
avril 2024
Interviews

Comment utiliser le pré-header ?

Comment utiliser le pré-header ? Dans le paysage en constante évolution du marketing numérique, la création d’emails captivants est devenue un véritable art. Chaque élément joue un rôle crucial …
mars 2024
Conseils
Avantages de Salesforce pour les PME

Pourquoi faire de la conduite du changement ? 

D’abord, qu’est-ce que la conduite du changement ? La conduite du changement (aussi appelée change management ou change) sert à accompagner les différentes parties prenantes lors d’une transformation dans …
mars 2024
Conseils
Interview-zoe-texei-1

Portrait de Texiens : Zoé Cadiou, Responsable Marketing Opérationnel

👋 Découvrez le portrait de Zoé Cadiou, Responsable Marketing Opérationnel chez Texeï ! 🚀 Arrivée chez Texeï en tant que Responsable de Communication, Zoé endosse désormais la casquette de Responsable …
février 2024
Interviews
Virgile-Paré-portrait -de-texien

Portrait de Texiens : Virgile Paré, Senior Business Analyst

👋 A l’honneur dans notre portrait de texiens, Virgile Paré, Senior Business Analyst, Spécialiste CRM-Analytics, et Manager chez Texeï ! 🚀 Arrivé il y a deux ans maintenant, Virgile …
février 2024
Interviews