Skip to content

Traduction de editable-svg-icons.md #121

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 17 commits into from
Jun 10, 2018
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions src/v2/cookbook/editable-svg-icons.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
---
title: Système d'Icônes SVG Dynamique
title: Système d'Icônes SVG Dynamiques
type: cookbook
order: 4
---

## Exemple de base

<p>Il y a plusieurs façons de créer un système d'icônes SVG. Une méthode qui tire parti des capacités de Vue est de créer des icônes en ligne modifiable en tant que composants. Voici quelques avantages à procéder ainsi :</p>
<p>Il y a plusieurs façons de créer un système d'icônes SVG. Une méthode qui tire parti des capacités de Vue est de créer des icônes inline modifiables en tant que composants. Voici quelques avantages à procéder ainsi :</p>
Copy link
Member

@MachinisteWeb MachinisteWeb Apr 28, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je propose :

des icônes directement modifiables dans le DOM HTML en tant que composants

ou

des icônes directement modifiables dans le code HTML en tant que composants

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pas de s à directement hein

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Retrait des « s » plus haut donc... huhu...


* Les icônes sont faciles à modifier à la volée
* Elles sont animables
* On peut utiliser des `props` et des `defaults` pour les dimensionner ou les modifier
* Elles sont écrites dans le code HTML, donc aucune requête HTTP n'est nécessaire
* Elles peuvent être rendues accessibles dynamiquement
* les icônes sont faciles à modifier à la volée
* elles sont animables
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

elles peuvent être animées

(bisarre animable :D)

* on peut utiliser des `props` et des `defaults` pour les dimensionner ou les modifier
* elles sont écrites dans le code HTML, donc aucune requête HTTP n'est nécessaire
* elles peuvent être rendues accessibles dynamiquement

D'abord on crée un dossier pour stocker toutes nos icônes, puis on les nomme suivant une convention pour pouvoir les appeler facilement.

Expand Down Expand Up @@ -45,7 +45,7 @@ Créons un composant icône de base (`IconBase.vue`) disposant d'un `slot`.

Ce composant peut être utilisé tel quel, le seul paramètre à vérifier sera le `viewBox` qui dépendra de celui de vos icônes. Dans l'icône de base, les paramètres `width`, `height`, `iconColor` et `iconName` sont des props pour pouvoir les piloter selon les besoins. La prop `iconName` sera utilisée comme le contenu de la balise `<titre>` et de l'attribut `id` de notre icône SVG pour assurer l'accessibilité.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

point virgule après tel quel

le seul paramètre que vous pourrez avoir à modifier est la viewBox de vos icônes

pour pouvoir les modifier dynamiquement

sera utilisée à la fois pour le contenu de la balise <titre> et pour l'attribut

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<title> ne doit pas être traduit non ?
Vu que c'est une balise HTML ?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

je retire la traduction, c'est vrai que c'est mieux


Le `<script>` du composant icône de base ressemble a ça. Remarquons les valeurs par défaut. Notre icône sera toujours affichée avec les mêmes hauteur/largeur partout sauf si on les force à changer.
Le `<script>` du composant icône de base ressemble à ça. Remarquons les valeurs par défaut. Notre icône sera toujours affichée avec les mêmes hauteur/largeur partout sauf si on les force à changer.

```js
export default {
Expand Down Expand Up @@ -82,7 +82,7 @@ Et si on souhaite afficher l'icône dans d'autres tailles :

```html
<p>
<!-- on peut lui passer une `width` et une `height` plus petite grace aux props -->
<!-- on peut lui passer une `width` et une `height` plus petite grâce aux props -->
<icon-base width="12" height="12" icon-name="write"><icon-write /></icon-base>
<!-- ou ne rien passer du tout et utiliser la width par défaut : 18 -->
<icon-base icon-name="write"><icon-write /></icon-base>
Expand All @@ -95,7 +95,7 @@ Et si on souhaite afficher l'icône dans d'autres tailles :

## Icônes animables

Mettre des icônes SVG dans des composants devient clé dès que l'on souhaite les animer. D'autant plus quand cette animation se passe lors d'une interaction. Les SVG `inline` sont la forme de SVG la mieux supportée. Voici comment animer une icône lors d'un click :
Mettre des icônes SVG dans des composants devient clé dès que l'on souhaite les animer. D'autant plus quand cette animation se passe lors d'une interaction. Les SVG `inline` sont la forme de SVG la mieux supportée. Voici comment animer une icône lors d'un clic :
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

... dans des composants devient nécessaire lorsque l'on ...

IMO

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ca m'a l'air mieux effectivement


```html
<template>
Expand Down Expand Up @@ -147,13 +147,13 @@ Nous avons ajouté des attributs `ref` aux groupes de paths pour pouvoir les ani

<p data-height="300" data-theme-id="0" data-slug-hash="dJRpgY" data-default-tab="result" data-user="Vue" data-embed-version="2" data-pen-title="Système d'icônes SVG Dynamique : Animation" class="codepen">Voir le Pen <a href="https://codepen.io/team/Vue/pen/dJRpgY/">Système d'icônes SVG Dynamique: Animation</a> by Vue (<a href="https://codepen.io/Vue">@Vue</a>) on <a href="https://codepen.io">CodePen</a>.</p><script async src="https://production-assets.codepen.io/assets/embed/ei.js"></script>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Il y a également un espace avant les : !


<p style="margin-top:-30px">Pas trop dur! Et en plus, super facile a modifier à la volée!!</p>
<p style="margin-top:-30px">Pas trop dur ! Et en plus, super facile à modifier lorsque à la volée.</p>
Copy link

@tsauvajon tsauvajon Apr 26, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pourquoi rajouter lorsque ?
Sans être totalement contre je préfère la version précédente.
Mais dans tous les cas ça ferait lorsqu'à.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 pour retirer lorsque, ça ne veut rien dire

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

C’est une typo, j’ai essayé de faire les modifia au bureau entre deux compiles... paaaaa bien


D'autres exemples d'animations sont disponibles dans le dépôt [ici](https://github.com/sdras/vue-sample-svg-icons/)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

J'ai souvent lu que c'était pas bien d'utiliser le texte "ici" pour un lien, car tu "perds de l'information".

Je pense que ça serait mieux si ça serait disponibles dans ce [dépôt](...)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bonne idee


## Remarques additionnelles

Les designers peuvent changer d'avis. Les exigences du produit peuvent aussi évoluer. Conserver la logique pour l'ensemble des icônes dans un seul composant de base nous permettra de mettre a jour toutes les icônes en modifiant un seul fichier. Même en utilisant un _icon loader_, il existe des situations où recréer ou modifier chaque SVG devient nécessaire si on souhaite la même modification sur tous les icônes. Cette méthode peut vous éviter ces contrariétés et vous faire gagner du temps.
Les designers peuvent changer d'avis. Les exigences du produit peuvent aussi évoluer. Conserver la logique pour l'ensemble des icônes dans un seul composant de base nous permettra de mettre a jour toutes les icônes en modifiant un seul fichier. Même en utilisant un _icon loader_, il existe des situations où recréer ou modifier chaque SVG devient nécessaire si on souhaite la même modification sur toutes les icônes. Cette méthode peut vous éviter ces contrariétés et vous faire gagner du temps.

## Quand éviter ce pattern

Expand Down