Skip to content

Commit 519ece9

Browse files
dcyourspt
authored andcommitted
docs: translate to french the end of file (#200)
* docs: translate to french the end of file Ref: #158 * refactor: add space after each html tag and before : * docs:[french] syntaxe correction Co-Authored-By: Julien Grünhagel <[email protected]> * docs:[french] syntaxe correction Co-Authored-By: Julien Grünhagel <[email protected]> * docs:[french] syntaxe correction Co-Authored-By: Julien Grünhagel <[email protected]> * docs:[french] syntaxe correction Co-Authored-By: Julien Grünhagel <[email protected]>
1 parent 28ac9af commit 519ece9

File tree

1 file changed

+61
-61
lines changed

1 file changed

+61
-61
lines changed

src/v2/guide/components-slots.md

+61-61
Original file line numberDiff line numberDiff line change
@@ -83,45 +83,45 @@ Souvenez-vous de cette règle :
8383

8484
Il y a des cas où il est utile de spécifier un contenu par défaut pour un slot qui sera rendu uniquement si aucun contenu n'est fourni. Par exemple, dans le composant `<submit-button>` :
8585

86-
```html
86+
``` html
8787
<button type="submit">
8888
<slot></slot>
8989
</button>
9090
```
9191

9292
Nous pourrions vouloir que le texte « Envoyer » soit rendu à l'intérieur de `<button>` la plupart du temps. Pour faire de « Envoyer » le contenu par défaut, nous pouvons le placer à l'intérieur des balises `<slot>` :
9393

94-
```html
94+
``` html
9595
<button type="submit">
9696
<slot>Envoyer</slot>
9797
</button>
9898
```
9999

100100
Maintenant quand nous utilisons `<submit-button>` dans le composant parent, nous ne fournissons aucun contenu pour le slot :
101101

102-
```html
102+
``` html
103103
<submit-button></submit-button>
104104
```
105105

106106
ce qui fera le rendu du contenu par défaut « Envoyer » :
107107

108-
```html
108+
``` html
109109
<button type="submit">
110110
Envoyer
111111
</button>
112112
```
113113

114114
Cependant, si nous fournissons le contenu :
115115

116-
```html
116+
``` html
117117
<submit-button>
118118
Sauver
119119
</submit-button>
120120
```
121121

122122
Le contenu fourni sera rendu à la place :
123123

124-
```html
124+
``` html
125125
<button type="submit">
126126
Sauver
127127
</button>
@@ -167,7 +167,7 @@ Un `<slot>` sans `name` obtient implicitement le nom "default".
167167

168168
Pour fournir du contenu à des slots nommés, nous pouvons utiliser la directive `v-slot` sur un `<template>`, fournissant le nom du slot en tant qu'argument de `v-slot` :
169169

170-
```html
170+
``` html
171171
<base-layout>
172172
<template v-slot:header>
173173
<h1>Le titre de ma page</h1>
@@ -186,7 +186,7 @@ Maintenant, tout a l'intérieur des éléments `<template>` sera passé aux slot
186186

187187
Cependant, vous pouvez toujours entourer le contenu du slot par défaut dans un `<template>` si vous désirez que cela soit plus explicite :
188188

189-
```html
189+
``` html
190190
<base-layout>
191191
<template v-slot:header>
192192
<h1>Le titre de ma page</h1>
@@ -228,7 +228,7 @@ Notez que **`v-slot` ne peut seulement être ajouté à un `<template>`** (avec
228228
229229
Parfois, il est utile pour les contenus de slot d'avoir accès aux données uniquement disponibles dans le composant enfant. Par exemple, imaginez un composant `<current-user>` avec le template suivant :
230230

231-
```html
231+
``` html
232232
<span>
233233
<slot>{{ user.lastName }}</slot>
234234
</span>
@@ -320,7 +320,7 @@ function (slotProps) {
320320
}
321321
```
322322

323-
Cela signifie que la valeur de `v-slot` peut accepter n'importe quelle expression JavaScript valide pouvant apparaitre à la position d'un argument lors de la définition d'une fonction. Également, pour les environnements qui le supportent ([composants monofichier](single-file-components.html) ou les [navigateurs modernes](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs)), vous pouvez utiliser la [décomposition ES2015](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs/Affecter_par_d%C3%A9composition#Object_destructuring) pour définir une collection de props de slot comme suit :
323+
Cela signifie que la valeur de `v-slot` peut accepter n'importe quelle expression JavaScript valide pouvant apparaitre à la position d'un argument lors de la définition d'une fonction. Également, pour les environnements qui le supportent ([composants monofichier](single-file-components.html) ou les [navigateurs modernes](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs/Affecter_par_d%C3%A9composition#Compatibilit%C3%A9_des_navigateurs)), vous pouvez utiliser la [décomposition ES2015](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs/Affecter_par_d%C3%A9composition#D%C3%A9composer_un_objet) pour définir une collection de props de slot comme suit :
324324

325325
``` html
326326
<current-user v-slot="{ user }">
@@ -348,7 +348,7 @@ Vous pouvez même définir des valeurs par défaut à utiliser dans le cas où l
348348

349349
> Nouveau dans la 2.6.0+
350350
351-
[Dynamic directive arguments](syntax.html#Dynamic-Arguments) also work on `v-slot`, allowing the definition of dynamic slot names:
351+
[Arguments de directive dynamiques](syntax.html#Dynamic-Arguments) fonctionne aussi sur `v-slot`, en permettant de définir des noms de slots dynamiques:
352352

353353
``` html
354354
<base-layout>
@@ -358,51 +358,51 @@ Vous pouvez même définir des valeurs par défaut à utiliser dans le cas où l
358358
</base-layout>
359359
```
360360

361-
## Named Slots Shorthand
361+
## Abréviation pour les slots nommés
362362

363363
> New in 2.6.0+
364364
365-
Similar to `v-on` and `v-bind`, `v-slot` also has a shorthand, replacing everything before the argument (`v-slot:`) with the special symbol `#`. For example, `v-slot:header` can be rewritten as `#header`:
365+
Semblable à `v-on` et`v-bind`, `v-slot` a aussi une abréviation, remplaçant tout ce qui précède l'argument (`v-slot:`) par le symbole spécial `#`. Par exemple, `v-slot: header` peut être réécrit comme `#header`:
366366

367-
```html
367+
``` html
368368
<base-layout>
369369
<template #header>
370-
<h1>Here might be a page title</h1>
370+
<h1>Peut être ici le titre d'une page</h1>
371371
</template>
372372

373-
<p>A paragraph for the main content.</p>
374-
<p>And another one.</p>
373+
<p>Un paragraphe pour le contenu principal.</p>
374+
<p>Un autre paragraphe.</p>
375375

376376
<template #footer>
377-
<p>Here's some contact info</p>
377+
<p>Quelques informations de contact</p>
378378
</template>
379379
</base-layout>
380380
```
381381

382-
However, just as with other directives, the shorthand is only available when an argument is provided. That means the following syntax is invalid:
382+
Cependant, comme pour les autres directives, l'abréviation n'est disponible que lorsqu'un argument est fourni. Cela signifie que la syntaxe suivante n'est pas valide:
383383

384384
``` html
385-
<!-- This will trigger a warning -->
385+
<!-- Déclenchera un avertissement -->
386386
<current-user #="{ user }">
387387
{{ user.firstName }}
388388
</current-user>
389389
```
390390

391-
Instead, you must always specify the name of the slot if you wish to use the shorthand:
391+
Au lieu de cela, vous devez toujours spécifier le nom slot si vous souhaitez utiliser l'abréviation :
392392

393393
``` html
394394
<current-user #default="{ user }">
395395
{{ user.firstName }}
396396
</current-user>
397397
```
398398

399-
## Other Examples
399+
## Autres exemples
400400

401-
**Slot props allow us to turn slots into reusable templates that can render different content based on input props.** This is most useful when you are designing a reusable component that encapsulates data logic while allowing the consuming parent component to customize part of its layout.
401+
**Les props de slot nous permettent de transformer les slot en templates réutilisables pouvant afficher différents contenus en fonction des slots fourni en paramètre.** Cela est particulièrement utile lorsque vous concevez un composant réutilisable qui encapsule la logique des données tout en permettant au composant parent de personnaliser une partie de sa mise en page.
402402

403-
For example, we are implementing a `<todo-list>` component that contains the layout and filtering logic for a list:
403+
Par exemple, nous implémentons un composant `<todo-list>` qui contient la logique de mise en page et de filtrage pour une liste :
404404

405-
```html
405+
``` html
406406
<ul>
407407
<li
408408
v-for="todo in filteredTodos"
@@ -413,29 +413,29 @@ For example, we are implementing a `<todo-list>` component that contains the lay
413413
</ul>
414414
```
415415

416-
Instead of hard-coding the content for each todo, we can let the parent component take control by making every todo a slot, then binding `todo` as a slot prop:
416+
Au lieu de coder en dur le contenu de chaque tâche, nous pouvons laisser le composant parent prendre le contrôle en faisant en sorte que chaque tâche soit un slot, puis lier `todo` en tant que prop du slot :
417417

418-
```html
418+
``` html
419419
<ul>
420420
<li
421421
v-for="todo in filteredTodos"
422422
v-bind:key="todo.id"
423423
>
424424
<!--
425-
We have a slot for each todo, passing it the
426-
`todo` object as a slot prop.
425+
Nous avons un slot pour chaque tâche, en le passant le
426+
     `todo` objet comme une prop du slot.
427427
-->
428428
<slot name="todo" v-bind:todo="todo">
429-
<!-- Fallback content -->
429+
<!-- Contenu par défaut -->
430430
{{ todo.text }}
431431
</slot>
432432
</li>
433433
</ul>
434434
```
435435

436-
Now when we use the `<todo-list>` component, we can optionally define an alternative `<template>` for todo items, but with access to data from the child:
436+
Maintenant, lorsque nous utilisons le composant `<todo-list>`, nous pouvons éventuellement définir un autre `<modèle>` pour les éléments à faire, mais avec un accès aux données de l'enfant :
437437

438-
```html
438+
``` html
439439
<todo-list v-bind:todos="todos">
440440
<template v-slot:todo="{ todo }">
441441
<span v-if="todo.isComplete">✓</span>
@@ -444,68 +444,68 @@ Now when we use the `<todo-list>` component, we can optionally define an alterna
444444
</todo-list>
445445
```
446446

447-
However, even this barely scratches the surface of what scoped slots are capable of. For real-life, powerful examples of scoped slot usage, we recommend browsing libraries such as [Vue Virtual Scroller](https://github.com/Akryum/vue-virtual-scroller), [Vue Promised](https://github.com/posva/vue-promised), and [Portal Vue](https://github.com/LinusBorg/portal-vue).
447+
Cependant, même cela effleure à peine ce que sont capables de faire les scops slots. Pour des exemples concrets et puissants d’utilisation des scops de slots, nous vous recommandons de parcourir des bibliothèques telles que [Vue Virtual Scroller](https://github.com/Akryum/vue-virtual-scroller), [Vue Promised](https://github.com/posva/vue-promised) et [Portal Vue](https://github.com/LinusBorg/portal-vue).
448448

449-
## Deprecated Syntax
449+
## Syntaxe obsolète
450450

451-
> The `v-slot` directive was introduced in Vue 2.6.0, offering an improved, alternative API to the still-supported `slot` and `slot-scope` attributes. The full rationale for introducing `v-slot` is described in this [RFC](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0001-new-slot-syntax.md). The `slot` and `slot-scope` attributes will continue to be supported in all future 2.x releases, but are officially deprecated and will eventually be removed in Vue 3.
451+
> La directive `v-slot` a été introduite dans Vue 2.6.0, offrant une API alternative améliorée aux attributs`slot` et `slot-scope` toujours pris en charge. La justification complète de l'introduction du `v-slot` est décrite dans cette [RFC](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0001-new-slot-syntax.md). Les attributs `slot` et`slot-scope` continueront d'être pris en charge dans toutes les futures versions 2.x, mais sont officiellement obsolètes et seront éventuellement supprimés dans Vue 3.
452452
453-
### Named Slots with the `slot` Attribute
453+
### Slots nommés avec l'attribut `slot`
454454

455-
> <abbr title="Still supported in all 2.x versions of Vue, but no longer recommended.">Deprecated</abbr> in 2.6.0+. See [here](#Named-Slots) for the new, recommended syntax.
455+
> <abbr title="Toujours pris en charge dans toutes les versions 2.x de Vue, mais n'est plus recommandé.">Obsolète</abbr> pour 2.6.0+. Voir [ici](#Les-slots-nommes) pour la nouvelle syntaxe recommandée.
456456
457-
To pass content to named slots from the parent, use the special `slot` attribute on `<template>` (using the `<base-layout>` component described [here](#Named-Slots) as example):
457+
Pour transmettre le contenu du parent aux slots nommés, utilisez l’attribut spécial `slot` sur `<template>` (utilisant le composant `<base-layout>` décrit [ici](#Les-slots-nommes) par exemple):
458458

459-
```html
459+
``` html
460460
<base-layout>
461461
<template slot="header">
462-
<h1>Here might be a page title</h1>
462+
<h1>Peut être ici le titre d'une page</h1>
463463
</template>
464464

465-
<p>A paragraph for the main content.</p>
466-
<p>And another one.</p>
465+
<p>Un paragraphe pour le contenu principal.</p>
466+
<p>Un autre paragraphe.</p>
467467

468468
<template slot="footer">
469-
<p>Here's some contact info</p>
469+
<p>Quelques informations de contact</p>
470470
</template>
471471
</base-layout>
472472
```
473473

474-
Or, the `slot` attribute can also be used directly on a normal element:
474+
Ou bien, l'attribut `slot` peut également être utilisé directement sur un élément normal :
475475

476476
``` html
477477
<base-layout>
478-
<h1 slot="header">Here might be a page title</h1>
478+
<h1 slot="header">Peut être ici le titre d'une page</h1>
479479

480-
<p>A paragraph for the main content.</p>
481-
<p>And another one.</p>
480+
<p>Un paragraphe pour le contenu principal.</p>
481+
<p>Un autre paragraphe.</p>
482482

483-
<p slot="footer">Here's some contact info</p>
483+
<p slot="footer">Quelques informations de contact</p>
484484
</base-layout>
485485
```
486486

487-
There can still be one unnamed slot, which is the **default slot** that serves as a catch-all for any unmatched content. In both examples above, the rendered HTML would be:
487+
Il peut toujours y avoir un emplacement non nommé, le **slot par défaut**, qui sert de passepartout pour tout contenu sans correspondance. Dans les deux exemples ci-dessus, le code HTML rendu serait :
488488

489489
``` html
490490
<div class="container">
491491
<header>
492-
<h1>Here might be a page title</h1>
492+
<h1>Peut être ici le titre d'une page</h1>
493493
</header>
494494
<main>
495-
<p>A paragraph for the main content.</p>
496-
<p>And another one.</p>
495+
<p>Un paragraphe pour le contenu principal.</p>
496+
<p>Un autre paragraphe.</p>
497497
</main>
498498
<footer>
499-
<p>Here's some contact info</p>
499+
<p>Quelques informations de contact</p>
500500
</footer>
501501
</div>
502502
```
503503

504-
### Scoped Slots with the `slot-scope` Attribute
504+
### Slots avec portée avec l'attribut `slot-scope`
505505

506-
> <abbr title="Still supported in all 2.x versions of Vue, but no longer recommended.">Deprecated</abbr> in 2.6.0+. See [here](#Scoped-Slots) for the new, recommended syntax.
506+
> <abbr title="Toujours pris en charge dans toutes les versions 2.x de Vue, mais n'est plus recommandé.">Obsolète</abbr> pour 2.6.0+. Voir [ici](#Slots-avec-portee) pour la nouvelle syntaxe recommandée.
507507
508-
To receive props passed to a slot, the parent component can use `<template>` with the `slot-scope` attribute (using the `<slot-example>` described [here](#Scoped-Slots) as example):
508+
Pour recevoir les props passés à un slot, le composant parent peut utiliser `<template>` avec l'attribut `slot-scope` (en utilisant le `<slot-example>` décrit [ici](#Slots-avec-portee) par exemple) :
509509

510510
``` html
511511
<slot-example>
@@ -515,9 +515,9 @@ To receive props passed to a slot, the parent component can use `<template>` wit
515515
</slot-example>
516516
```
517517

518-
Here, `slot-scope` declares the received props object as the `slotProps` variable, and makes it available inside the `<template>` scope. You can name `slotProps` anything you like similar to naming function arguments in JavaScript.
518+
Ici, `slot-scope` déclare l'objet props reçu en tant que variable`slotProps` et le rend disponible dans la portée `<template>`. Vous pouvez nommer `slotProps` comme vous le souhaitez, comme pour nommer les arguments des fonctions en JavaScript.
519519

520-
Here `slot="default"` can be omitted as it is implied:
520+
Ici `slot="default"` peut être omis car cela sous-entend :
521521

522522
``` html
523523
<slot-example>
@@ -527,7 +527,7 @@ Here `slot="default"` can be omitted as it is implied:
527527
</slot-example>
528528
```
529529

530-
The `slot-scope` attribute can also be used directly on a non-`<template>` element (including components):
530+
L'attribut `slot-scope` peut également être utilisé directement sur un élément non-`<template>`(y compris les composants) :
531531

532532
``` html
533533
<slot-example>
@@ -537,7 +537,7 @@ The `slot-scope` attribute can also be used directly on a non-`<template>` eleme
537537
</slot-example>
538538
```
539539

540-
The value of `slot-scope` can accept any valid JavaScript expression that can appear in the argument position of a function definition. This means in supported environments ([single-file components](single-file-components.html) or [modern browsers](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#Browser_compatibility)) you can also use [ES2015 destructuring](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#Object_destructuring) in the expression, like so:
540+
La valeur de `slot-scope` peut accepter toute expression JavaScript valide pouvant apparaitre dans la position d'argument d'une définition de fonction. Cela signifie que dans les environnements pris en charge ([Composants monofichiers](single-file-components.html) ou [navigateurs modernes](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs/Affecter_par_d%C3%A9composition#Compatibilit%C3%A9_des_navigateurs)) vous pouvez aussi utiliser [Décomposition ES2015](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs/Affecter_par_d%C3%A9composition#D%C3%A9composer_un_objet) dans l'expression, comme ceci :
541541

542542
``` html
543543
<slot-example>
@@ -547,7 +547,7 @@ The value of `slot-scope` can accept any valid JavaScript expression that can ap
547547
</slot-example>
548548
```
549549

550-
Using the `<todo-list>` described [here](#Other-Examples) as an example, here's the equivalent usage using `slot-scope`:
550+
En utilisant le `<todo-list>` décrit [ici](#Autres-exemples) à titre d'exemple, voici l'utilisation équivalente en utilisant `slot-scope` :
551551

552552
``` html
553553
<todo-list v-bind:todos="todos">

0 commit comments

Comments
 (0)