Skip to content

[Mise à jour] — Juin 2018 #137

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 38 commits into from
Jun 14, 2018
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
91a46ed
Update unit-testing-vue-components.md (#1623)
38elements May 11, 2018
20e461a
Fixed a typo (#1625)
aabounegm May 13, 2018
aa3a92e
fix a typo (#1627)
May 14, 2018
1bf4628
Update v-for list example (#1628)
chipit24 May 14, 2018
f247d17
fix: code snippet language (close #1617) (#1626)
hmatalonga May 14, 2018
0336b80
Update todo-list-example for a11y (#1630)
chipit24 May 17, 2018
7c12895
change NODE_ENV to follow recommendations from webpack (#1622)
parkourben99 May 17, 2018
9244cfc
note that modes are not available in transition groups, fixes #1619
chrisvfritz May 17, 2018
19733d5
add examples for in API doc
chrisvfritz May 17, 2018
e959d38
add comparison note about react-like libraries
chrisvfritz May 17, 2018
418d7f3
Update components.md (#1632)
artiomgiza May 17, 2018
28ad8a1
cookbook entry for storage (#1550)
cfjedimaster May 18, 2018
a78885d
Update index.md (#1634)
Alex-Sokolov May 18, 2018
44d73a1
docs(guide/comparison): correct size stat of Angular CLI project (#1638)
trotyl May 21, 2018
3d1fdd8
Update client-side-storage.md (#1640)
Alex-Sokolov May 21, 2018
5bd7be0
Update creating-custom-scroll-directives.md (#1639)
Alex-Sokolov May 21, 2018
ef9b64e
chore: update ad code
yyx990803 May 22, 2018
bf5a331
remove unnecessary word 'know' (#1641)
pipopotamasu May 22, 2018
9e977cd
Updated broken links for the Vue Test Utils documentation. (#1643)
May 22, 2018
eee7fcd
Reorganize component props to introduce prop types earlier, fixes #16…
chrisvfritz May 25, 2018
dc9b6cb
First stab at SFC to npm documentation (#1558)
mgdodge May 25, 2018
256c51b
Rename packaing-sfc-for-npm.md to packaging-sfc-for-npm.md (#1652)
Alex-Sokolov May 25, 2018
c2be312
Update link in comparison guide (#1653)
flaviocopes May 28, 2018
8e08656
chore: update vue version
yyx990803 Jun 1, 2018
b025983
Fix link to docs on custom inputs (#1660)
alastairs Jun 3, 2018
055629e
correct wrong link (#1661)
byog Jun 3, 2018
f3d9557
Feature/vuemeetups (#1665)
bencodezen Jun 3, 2018
7cb981c
Added details about Lifecycle Hooks (#1664)
Knogobert Jun 3, 2018
ec38b56
improve comparisons react scaling down section
chrisvfritz Jun 3, 2018
fda94a9
add text versions of image code examples
chrisvfritz Jun 3, 2018
b0d792b
remove extra comma in components
chrisvfritz Jun 3, 2018
cffbc40
TypeScript project generation in @vue/cli 3.0 (#1668)
k3a Jun 3, 2018
4a734c2
chore: update sponsors
yyx990803 Jun 4, 2018
40e5066
Merge remote-tracking branch 'upstream/master' into june-2018
MachinisteWeb Jun 10, 2018
8d7aec7
Merge branch 'master' into june-2018
MachinisteWeb Jun 10, 2018
9e3d2c2
Sylvain and Forresst feedbacks
MachinisteWeb Jun 11, 2018
1bfac64
@forrestt and @RaisonBlue feedback
MachinisteWeb Jun 12, 2018
933dfb4
Feedback of @rspt
MachinisteWeb Jun 12, 2018
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
4 changes: 2 additions & 2 deletions src/v2/api/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -1606,7 +1606,7 @@ type: api
Vue.component('welcome-button', {
template: `
<button v-on:click="$emit('welcome')">
Cliquez-moi pour être accueilli
Cliquez-moi pour être salué
</button>
`
})
Expand Down Expand Up @@ -1634,7 +1634,7 @@ type: api
Vue.component('welcome-button', {
template: `
<button v-on:click="$emit('welcome')">
Cliquez-moi pour être accueilli
Cliquez-moi pour être salué
</button>
`
})
Expand Down
12 changes: 6 additions & 6 deletions src/v2/cookbook/unit-testing-vue-components.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,21 +148,21 @@ Et enfin la version naïve de nos tests
import { shallowMount } from '@vue/test-utils'

describe('Foo', () => {
it('renders a message and responds correctly to user input', () => {
it('restitue un message et répond correctement à la saisie de l\'utilisateur', () => {
const wrapper = shallowMount(Foo, {
data: {
message: 'Hello World',
username: ''
}
})

// see if the message renders
// vérifie si le message est restitué
expect(wrapper.find('.message').text()).toEqual('Hello World')

// assert the error is rendered
// vérifie que `error` est rendue
expect(wrapper.find('.error').exists()).toBeTruthy()

// update the `username` and assert error is no longer rendered
// et à jour `username` et vérifie que `error` n'est plus rendu

Choose a reason for hiding this comment

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

// et à jour => // met à jour

wrapper.setData({ username: 'Lachlan' })
expect(wrapper.find('.error').exists()).toBeFalsy()
})
Expand Down Expand Up @@ -224,7 +224,7 @@ describe("Foo", () => {

À noter :

Au début du code, on déclare la fonction `factory` qui prend l'objet `values` et en construit le `data` pour renvoyer une nouvelle instance de `wrapper`. Du coup, plus besoin de dupliquer `const wrapper = shallowMount(Foo)` dans chaque test. Un autre avantage important : Quand des composants plus complexes vont devoir être testés, le `mock` ou le `stub` d'une méthode ou d'une propriété calculée pourront facilement être mutualisés dans cette `factory`.
Au début du code, on déclare la fonction `factory` qui prend l'objet `values` et en construit le `data` pour renvoyer une nouvelle instance de `wrapper`. Du coup, plus besoin de dupliquer `const wrapper = shallowMount(Foo)` dans chaque test. Un autre avantage important : quand des composants plus complexes vont devoir être testés, le `mock` ou le `stub` d'une méthode ou d'une propriété calculée pourront facilement être mutualisés dans cette `factory`.

## Pour aller plus loin

Expand All @@ -234,7 +234,7 @@ Le test précédent est assez simple. En pratique on souhaitera souvent vérifie
* faire des `commit` ou des `dispatch` de mutations ou d'actions a un store `Vuex`
* tester l'interactivité

There are more complete examples showing such tests in the Vue Test Utils [guides](https://vue-test-utils.vuejs.org/guides/).
Il existe des exemples plus complets illustrant ce genre de tests dans les guides de Vue Util Utils [guides](https://vue-test-utils.vuejs.org/guides/).

Choose a reason for hiding this comment

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

ce genre de tests dans les guides de Vue Util Utils [guides](https://vue-test-utils.vuejs.org/guides/).
à remplacer par
ce genre de tests dans les [guides](https://vue-test-utils.vuejs.org/guides/) de Vue Util Utils.


Vue Test Utils et le gigantesque ecosystème JavaScript fournissant plein d’outils facilitant une couverture de test proche de 100%. Mais les tests unitaires ne sont qu’une partie de la pyramide de tests. On peut y inclure des tests d’intégration (e2e ou end to end), et du snapshot testing. Les tests unitaires sont les plus petits et les plus simples des tests - Ils vérifient les plus petites unités de travail, isolant ainsi chaque partie d’un même composant.

Expand Down
6 changes: 3 additions & 3 deletions src/v2/guide/comparison.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,9 +130,9 @@ Une autre option que les développeurs Vue auront bientôt est l'utilisation de

MobX est devenu populaire dans la communauté React et utilise actuellement un système de réactivité identique à Vue. Dans une certaine mesure, le workflow React + MobX peut être considéré comme plus verbeux que Vue. Donc si vous utilisez cette combinaison et qu'elle vous plait, passer sur Vue est probablement la prochaine étape logique.

### Preact and Other React-Like Libraries
### Preact et les autres bibliothèques de type React

React-like libraries usually try to share as much of their API and ecosystem with React as is feasible. For that reason, the vast majority of comparisons above will also apply to them. The main difference will typically be a reduced ecosystem, often significantly, compared to React. Since these libraries cannot be 100% compatible with everything in the React ecosystem, some tooling and companion libraries may not be usable. Or, even if they appear to work, they could break at any time unless your specific React-like library is officially supported on par with React.
Les bibliothèques de type React essayent généralement de partager le plus possible leur API et leur écosystème avec React. Pour cette raison, la grande majorité des comparaisons ci-dessus leur seront également applicables. La principale différence sera généralement un écosystème réduit, souvent de manière significative, par rapport à React. Étant donné que ces bibliothèques ne peuvent pas être 100% compatibles dans l'écosystème React, certaines bibliothèques d'outils et de compagnons ne peuvent pas être utilisables. Ou, même s'ils semblent fonctionner, ils peuvent se bloquer à tout moment à moins que votre bibliothèque spécifique de type React ne soit officiellement supportée par React.

## AngularJS (Angular 1)

Expand Down Expand Up @@ -182,7 +182,7 @@ Les deux frameworks sont exceptionnellement rapides avec des métriques similair

### Taille

Les versions récentes d'Angular, avec une [compilation anticipée](https://fr.wikipedia.org/wiki/Compilation_anticip%C3%A9e) et du [tree-shaking](https://en.wikipedia.org/wiki/Tree_shaking) sont capables de diminuer leurs tailles considérablement. Cependant, un projet complet Vue 2, avec Vuex et Vue Router inclus (~30ko gzippé), est toujours significativement plus léger qu'une application avec compilation anticipée et générée par `angular-cli` (~65ko gzippée).
Les versions récentes d'Angular, avec une [compilation anticipée](https://fr.wikipedia.org/wiki/Compilation_anticip%C3%A9e) et du [tree-shaking](https://en.wikipedia.org/wiki/Tree_shaking), sont capables de diminuer considérablement leurs taille en sortie. Cependant, un projet complet Vue 2, avec Vuex et Vue Router inclus (~30ko gzippé), est toujours significativement plus léger qu'une application avec compilation anticipée et générée par `angular-cli` (~65ko gzippée).
Copy link

Choose a reason for hiding this comment

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

"leurs tailles en sortie"


### Flexibilité

Expand Down
4 changes: 2 additions & 2 deletions src/v2/guide/components.md
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,7 @@ Si vous essayez cela dans votre template cependant, Vue va afficher une erreur,
</div>
```

À mesure que nos composants grandissent, ils ne sera plus question uniquement d'un titre et d'un contenu pour le billet, mais également de la date de publication, des commentaires et bien plus. Définir une prop pour chaque information indépendemment pourrait devenir gênant :
À mesure que nos composants grandissent, il ne sera plus question uniquement d'un titre et d'un contenu pour le billet, mais également de la date de publication, des commentaires et bien plus. Définir une prop indépendamment pour chaque information pourrait devenir gênant :

```html
<blog-post
Expand Down Expand Up @@ -264,7 +264,7 @@ Vue.component('blog-post', {
})
```

<p class="tip">L'exemple ci-dessus et plusieurs futurs exemples utilisent une chaine de caractère JavaScript appelée [modèles de libellés](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) permettant des templates multilignes plus lisibles. Ceux-ci ne sont pas supportés dans Internet Explorer (IE), aussi, si vous souhaitez supporter IE sans utiliser de transpilleur (p. ex. Babel ou TypeScript), [échappez le caractère de nouvelle ligne](https://css-tricks.com/snippets/javascript/multiline-string-variables-in-javascript) à la place.</p>
<p class="tip">L'exemple ci-dessus et plusieurs exemples par la suite utilisent une chaîne de caractères JavaScript appelée [modèles de libellés](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) (« template string ») permettant des templates multilignes plus lisibles. Ceux-ci ne sont pas supportés dans Internet Explorer (IE), aussi, si vous souhaitez supporter IE sans utiliser de transpilateur (p. ex. Babel ou TypeScript), [ajoutez un caractère d'échappement à chaque nouvelle ligne](https://css-tricks.com/snippets/javascript/multiline-string-variables-in-javascript) à la place.</p>

Maintenant, chaque fois qu'une nouvelle propriété sera ajoutée à l'objet `post`, elle sera automatiquement disponible dans `<blog-post>`.

Expand Down
2 changes: 1 addition & 1 deletion src/v2/guide/events.md
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ Pour résoudre ce problème, Vue propose des modificateurs d'évènements pour `
<a v-on:click.once="doThis"></a>
```

Au contraire des autres modificateurs, qui sont exclusifs aux évènements natifs du DOM, le modificateur `.once` peut également être utilisé pour les [évènements des composants](components.html). Si vous n'avez pas encore lu la section concernant les composants, ne vous en inquiétez pas pour le moment.
Contrairement aux autres modificateurs, qui sont exclusifs aux évènements natifs du DOM, le modificateur `.once` peut également être utilisé pour les [évènements des composants](components.html). Si vous n'avez pas encore lu la section concernant les composants, ne vous en inquiétez pas pour le moment.

> Nouveau en 2.3.0+

Expand Down
10 changes: 5 additions & 5 deletions src/v2/guide/join.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Maintenant nous allons voir ensemble ce que la communauté peut faire pour vous
### Obtenir de l'aide

- [Forum](https://forum.vuejs.org/french) : Le meilleur endroit pour poser des questions et obtenir des réponses à propos de Vue et de son écosystème.
- [Chat](https://discordapp.com/channels/325477692906536972/360669119948783616) | [En](https://chat.vuejs.org/) : Un lieu pour rencontrer et discuter en temps réel.
- [Chat](https://discordapp.com/channels/325477692906536972/360669119948783616) | [En](https://chat.vuejs.org/) : un endroit où les développeurs peuvent se rencontrer et discuter en temps réel.
Copy link

Choose a reason for hiding this comment

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

Ce serait bien d'aligner les majuscules/minuscules après les deux points dans cette liste. Le "un endroit" commence par une minuscule alors que "Le meilleur endroit" commence par une majuscule

- [Meetups](https://www.vuemeetups.org): Envie de rencontrer des utilisateurs de Vue.js enthousiastes comme vous ? Intéressé pour devenir un leader de communauté ? Nous avons l'aide et le support qu'il vous faut juste ici !
Copy link

Choose a reason for hiding this comment

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

Avec la graphie rectifiée, "leader" devrait s'écrire "leadeur".

Question de point de vu, mais je trouve que cette rectification est en quelque sorte un non-sens ^^

- [GitHub](https://github.com/vuejs) : Si vous avez un bogue à reporter ou une demande de nouvelle fonctionnalité à faire, les rapports de bogue (« issues ») GitHub sont là pour ça. Les propositions de fusion (« pull requests ») sont également les bienvenues !

Expand Down Expand Up @@ -41,21 +41,21 @@ Après cela, vous serez fin prêt à contribuer sur les dépôts principaux de V
Hormis répondre aux questions ou partager des ressources sur le forum et le chat, il y a beaucoup d'autres manières d'améliorer et partager vos connaissances :

- **Partagez des ressources pour l'apprentissage.** On dit souvent que la meilleure manière d'apprendre est d'enseigner. Si vous faites quelque chose d'intéressant avec Vue, renforcez votre expertise en écrivant un billet de blog, en proposant des travaux pratiques ou même en publiant un gist sur les réseaux sociaux.
- **Surveillez les dépôts qui vous tiennent à cœur.** Cela vous enverra des notifications dès qu'il y aura une activité dans le dépôt, vous permettant de suivre les discussions en cours et les fonctionnalités à venir. C'est une approche très intéressante pour consolider votre expertise tout en aidant à résoudre les bogues des rapports et les propositions de fusion.
- **Surveillez les dépôts qui vous tiennent à cœur.** Cela vous enverra des notifications dès qu'il y aura une activité dans le dépôt, vous permettant de suivre les discussions en cours et les fonctionnalités à venir. C'est une approche très intéressante pour consolider votre expertise tout en aidant à résoudre les bogues des rapports et les propositions de fusion (« pull request »).

### Traduire les documentations

Vue s'est déjà répandu à travers le monde avec l'équipe principale présente dans au moins une demi-douzaine de fuseaux horaires. Le [forum international](https://forum.vuejs.org/) inclut bien des langues et beaucoup de nos documentations ont une [traduction maintenue activement](https://github.com/vuejs?utf8=%E2%9C%93&query=vuejs.org). Nous sommes extrêmement fiers de notre présence à l'international avec Vue, mais nous pouvons faire encore mieux.

Nous espérons qu'en ce moment, vous êtes en train de lire cette phrase dans votre langue préférée. Si ce n'est pas le cas, que diriez-vous de nous aider à changer cela en répliquant le [dépôt international](https://github.com/vuejs/vuejs.org/) ?

Et si maintenir la traduction que vous êtes en train de lire vous intéresse (ou toutes autres traduction officielles d'ailleurs), n'hésitez pas à répliquer le [dépôt français](https://github.com/vuejs-fr/vuejs.org/) et à proposer vos traductions ou corrections en propositions de fusion.
Et si maintenir la traduction que vous êtes en train de lire vous intéresse (ou toutes les autres traductions officielles d'ailleurs), n'hésitez pas à répliquer le [dépôt français](https://github.com/vuejs-fr/vuejs.org/) et à proposer vos traductions ou corrections en propositions de fusion (« pull request »).

### Devenir un leader de communauté
Copy link

Choose a reason for hiding this comment

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

"leadeur" selon la graphie rectifiée (c.f. mon autre commentaire à ce propos)


Il y a beaucoup de chose que vous pouvez faire pour aider Vue à grandir dans votre communauté :
Il y a beaucoup de choses que vous pouvez faire pour aider Vue à grandir dans votre communauté :

- **Le présenter à vos meetup locaux.** Chaque fois que vous donner un talk ou que vous faites un workshop, vous apportez beaucoup de valeur à la communauté en aidant aussi bien les nouveaux développeurs que les plus expérimentés.
- **Le présenter lors de vos meetup locaux.** Chaque fois que vous donnez un talk ou que vous faites un workshop, vous apportez beaucoup de valeur à la communauté en aidant aussi bien les nouveaux développeurs que les plus expérimentés.
- **Lancez votre propre meetup.** S'il n'y a pas déjà un meetup Vue dans votre zone, vous pouvez créer le votre ! Utilisez [les outils vuemeetups.org](https://www.vuemeetups.org/resources/#introduction) pour vous aider à réussir !
- **Aider les organisateurs de meetup.** Il n'y a jamais assez d'aide quand il s'agit de mettre en place un évènement, donc vous pouvez donner un coup de main pour aider vos organisateurs locaux pour aider à faire de chaque évènement un succès.

Expand Down
4 changes: 2 additions & 2 deletions src/v2/guide/single-file-components.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Tous ces désavantages sont résolus par les **composants monofichiers** avec un

Voici un exemple simple de fichier que nous appellerons `Hello.vue` :

<a href="https://gist.github.com/chrisvfritz/e2b6a6110e0829d78fa4aedf7cf6b235" target="_blank"><img src="/images/vue-component.png" alt="Single-file component example (click for code as text)" style="display: block; margin: 30px auto;"></a>
<a href="https://gist.github.com/chrisvfritz/e2b6a6110e0829d78fa4aedf7cf6b235" target="_blank"><img src="/images/vue-component.png" alt="Exemple d'un composant pour un seul fichier (cliquez pour voir le code sous forme de texte)" style="display: block; margin: 30px auto;"></a>

Maintenant nous avons :

Expand All @@ -29,7 +29,7 @@ Maintenant nous avons :

Et comme promis, nous pouvons aussi utiliser des préprocesseurs tels que Pug, Babel (avec les modules ES2015), et Stylus pour obtenir des composants plus lisibles et plus riches en fonctionnalités.

<a href="https://gist.github.com/chrisvfritz/1c9f2daea9bc078dcb47e9a82e5f7587" target="_blank"><img src="/images/vue-component-with-preprocessors.png" alt="Single-file component example with preprocessors (click for code as text)" style="display: block; margin: 30px auto;"></a>
<a href="https://gist.github.com/chrisvfritz/1c9f2daea9bc078dcb47e9a82e5f7587" target="_blank"><img src="/images/vue-component-with-preprocessors.png" alt="Exemple d'un composant pour un seul fichier avec des préprocesseurs (cliquez pour voir le code sous forme de texte)" style="display: block; margin: 30px auto;"></a>

Ces langages spécifiques ne sont que des exemples; vous pourriez tout aussi aisément utiliser Bublé, Typescript, SCSS, PostCSS - ou tout autre préprocesseur qui vous aide à être productif. Si vous utilisez webpack avec `vue-loader`, vous aurez aussi un outil de premier choix pour les modules CSS.

Expand Down
2 changes: 1 addition & 1 deletion src/v2/guide/transitions.md
Original file line number Diff line number Diff line change
Expand Up @@ -955,7 +955,7 @@ Jusqu'à présent, nous avons réalisé des transitions pour :
Alors, qu'en est-il lorsque nous avons une liste complète d'éléments où nous voulons faire un rendu simultané, par exemple avec `v-for` ? Dans ce cas, nous allons utiliser le composant `<transition-group>`. Cependant avant de plonger dans un exemple, il y a quelques éléments importants à connaitre sur ce composant :

- Contrairement à `<transition>`, il rend un élément réel : par défaut un `<span>`. Vous pouvez modifier l'élément rendu avec l'attribut `tag`.
- [Les modes de transitions](#Les-modes-de-transition) ne sont pas disponibles car nous ne pouvons plus alterner entre des éléments mutuellements exclusifs.
- [Les modes de transition](#Les-modes-de-transition) ne sont pas disponibles car nous ne pouvons plus alterner entre des éléments mutuellements exclusifs.
Copy link

Choose a reason for hiding this comment

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

"mutuellement" est invariable

- Les éléments à l'intérieur **doivent toujours avoir** un attribut `key` unique

### Transitions de liste entrantes/sortantes
Expand Down