Skip to content

[Translation WIP] Official French Translation from Vuejs-FR #787

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

Closed
wants to merge 106 commits into from
Closed
Show file tree
Hide file tree
Changes from 16 commits
Commits
Show all changes
106 commits
Select commit Hold shift + click to select a range
2760a53
Création de la branch working
MachinisteWeb May 5, 2017
f506497
installation.md review.
MachinisteWeb May 8, 2017
bc901f4
Result from review https://github.com/vuejs-fr/vue-router/pull/3/
MachinisteWeb May 8, 2017
42ed911
Update from `en` version
MachinisteWeb May 8, 2017
59a355b
Add _intro branch
MachinisteWeb May 8, 2017
1c7d8fe
Merge pull request #4 from vuejs-fr/working_installation
MachinisteWeb May 9, 2017
e142ad3
Add propositions by haeresis and kocal
MachinisteWeb May 10, 2017
adeb362
Merge pull request #5 from vuejs-fr/working_intro
MachinisteWeb May 10, 2017
065b339
Change « ponctuation »
MachinisteWeb May 10, 2017
ef2b6df
Merge remote-tracking branch 'upstream/dev' into working
MachinisteWeb May 10, 2017
3139afc
Branche pour la revue de getting-started.md
MachinisteWeb May 10, 2017
36f8d63
Update from @haeresis and @kokal review.
MachinisteWeb May 18, 2017
b693198
Merge pull request #6 from vuejs-fr/getting-started
MachinisteWeb May 18, 2017
7c35cd4
Merge remote-tracking branch 'upstream/dev' into working
MachinisteWeb May 18, 2017
a129a55
FR review of getting-started.md
MachinisteWeb May 18, 2017
6b6e41f
`_` with `**` usage to separate italic from bold.
MachinisteWeb May 18, 2017
678edd3
`_` with `**` usage to separate italic and bold at same position.
MachinisteWeb May 18, 2017
714409a
Last intro.md review before PR
MachinisteWeb May 18, 2017
8ceff1e
Remove repetition from intro.md
MachinisteWeb May 18, 2017
c839f84
Update website
MachinisteWeb May 18, 2017
5124dc7
Update state.md with haeresis and kocal review
MachinisteWeb May 19, 2017
c80c83b
Update asked by @posva
MachinisteWeb May 19, 2017
b998fca
Merge pull request #8 from vuejs-fr/state
MachinisteWeb May 20, 2017
3a5a270
Review of state.md
MachinisteWeb May 20, 2017
ef3609f
Revert "Review of state.md"
MachinisteWeb May 20, 2017
9ce9f2b
Review of state.md
MachinisteWeb May 20, 2017
6e43e28
Update SUMMARY.md because of state.md review
MachinisteWeb May 20, 2017
4850dda
SUMMARY.md update
MachinisteWeb May 20, 2017
fb8f0c4
update SUMMARY.md
MachinisteWeb May 20, 2017
4ba4208
Start getters.md review
MachinisteWeb May 20, 2017
6ed64c7
Remove first line
MachinisteWeb May 20, 2017
55cb40a
Add new english part
MachinisteWeb May 20, 2017
92f578b
Translate a new example
MachinisteWeb May 20, 2017
7222212
Starting structure.md review
MachinisteWeb May 20, 2017
6fec9e4
Starting structure.md review
MachinisteWeb May 20, 2017
30816d5
Update des petits changements
MachinisteWeb May 20, 2017
dff200a
Remove structure.md traduction from this PR
MachinisteWeb May 20, 2017
fefc19e
Relecture de getters.md après review de @Kokal et @Haeresis
MachinisteWeb May 20, 2017
73c8d0f
Starting review for mutations.md
MachinisteWeb May 20, 2017
c11e884
Merge pull request #10 from vuejs-fr/structure
MachinisteWeb May 20, 2017
5283090
Merge pull request #9 from vuejs-fr/getters
MachinisteWeb May 20, 2017
900e65f
Add a proposition by @posva
MachinisteWeb May 20, 2017
f37b667
Add review of getters.md and structure.md
MachinisteWeb May 20, 2017
a943210
Merge remote-tracking branch 'upstream/dev' into working
MachinisteWeb May 22, 2017
0f73e76
Merge branch 'working' into mutation
MachinisteWeb May 22, 2017
102eb49
Add changes after @haeresis and @kokal review.
MachinisteWeb May 22, 2017
7a15c65
Translate Vue images
MachinisteWeb May 22, 2017
91b50b4
Translate Vuex images
MachinisteWeb May 22, 2017
2ad1901
Start review of actions.md
MachinisteWeb May 22, 2017
e17989a
Merge pull request #11 from vuejs-fr/mutation
MachinisteWeb May 22, 2017
11e1e29
Merge branch 'working' into actions
MachinisteWeb May 22, 2017
131acb2
New line
MachinisteWeb May 22, 2017
65f8e11
New lines
MachinisteWeb May 22, 2017
f8d117f
map to attacher
MachinisteWeb May 22, 2017
4230cf5
modules.md review
MachinisteWeb May 22, 2017
261e918
Ajout des nouveaux textes partiellement traduit.
MachinisteWeb May 22, 2017
365a982
Review and translation de modules.md
MachinisteWeb May 22, 2017
47f5ef0
Review de plugins.md
MachinisteWeb May 22, 2017
ccdc719
Add review of @kokal and @haeresis
MachinisteWeb May 23, 2017
6bc5043
Review of @kokal and @haeresis
MachinisteWeb May 23, 2017
3e5bec2
Review from @kokal et @haeresis
MachinisteWeb May 23, 2017
0f0b968
Translate comment from plugins.md
MachinisteWeb May 23, 2017
ae44a29
Merge pull request #12 from vuejs-fr/actions
MachinisteWeb May 23, 2017
26aef80
Merge pull request #13 from vuejs-fr/modules
MachinisteWeb May 23, 2017
8902f83
Merge pull request #14 from vuejs-fr/plugins
MachinisteWeb May 23, 2017
737b013
Merge remote-tracking branch 'upstream/dev' into dev
MachinisteWeb May 23, 2017
3afd7a8
Add french review of actions.md, modules.md, mutations.md and plugins.md
MachinisteWeb May 23, 2017
dda4b44
Merge remote-tracking branch 'upstream/dev' into working
MachinisteWeb May 27, 2017
4e0828c
Update getting-started.md example
MachinisteWeb May 27, 2017
a8bfa60
Merge remote-tracking branch 'upstream/dev' into dev
MachinisteWeb May 27, 2017
d72d70c
Merge remote-tracking branch 'upstream/dev' into working
MachinisteWeb Jun 12, 2017
fcd43b6
Merge remote-tracking branch 'upstream/dev' into dev
MachinisteWeb Jun 12, 2017
020c644
Update french content with EN changes
MachinisteWeb Jun 12, 2017
8120f79
Merge branch 'dev' into dev
MachinisteWeb Jun 16, 2017
540d633
Merge remote-tracking branch 'upstream/dev' into working
MachinisteWeb Jun 17, 2017
d74d646
Review of strict.md
MachinisteWeb Jun 17, 2017
6f2e805
Review haeresis
MachinisteWeb Jun 17, 2017
a30286e
Traduction de forms.md
MachinisteWeb Jun 17, 2017
a07b01f
Update forms.md
MachinisteWeb Jun 17, 2017
4dc4b9d
Traduction de testing.md
MachinisteWeb Jun 17, 2017
1f4b52b
Update testing.md
MachinisteWeb Jun 17, 2017
dddd4c3
Relecture de hot-reload.md
MachinisteWeb Jun 17, 2017
b120a02
Update hot-reload.md
MachinisteWeb Jun 17, 2017
9c9dbd8
Relecture api.md
MachinisteWeb Jun 17, 2017
7a49e01
Line alignment.
MachinisteWeb Jun 17, 2017
cfa1fac
aligment options
MachinisteWeb Jun 17, 2017
aa5bf46
Api aligments
MachinisteWeb Jun 17, 2017
315d454
New line addition
MachinisteWeb Jun 17, 2017
d244645
Next
MachinisteWeb Jun 17, 2017
684de06
Dernier ajout.
MachinisteWeb Jun 17, 2017
15d78d8
Relecture @haeresis complète.
MachinisteWeb Jun 17, 2017
82111eb
Update SUMMARY.md
MachinisteWeb Jun 19, 2017
d00c872
Add @haeresis and @kocal review.
MachinisteWeb Jun 22, 2017
e132a58
virifier => vérifier
MachinisteWeb Jun 22, 2017
81afea1
Proposition of @kokal added.
MachinisteWeb Jun 22, 2017
c7d2caf
Merge pull request #17 from vuejs-fr/testing
Kocal Jun 22, 2017
7638407
Merge pull request #16 from vuejs-fr/form
Kocal Jun 23, 2017
e8ead88
Merge pull request #18 from vuejs-fr/hot-reload
MachinisteWeb Jun 28, 2017
3275349
Merge branch 'working' into strict
MachinisteWeb Jun 28, 2017
2ec05fd
Merge branch 'working' into api
MachinisteWeb Jun 28, 2017
3ca4122
Review de @Kocal
MachinisteWeb Jun 29, 2017
d2a9cb0
Review de @Kocal ajoutée
MachinisteWeb Jun 29, 2017
236e54f
Merge pull request #15 from vuejs-fr/strict
Kocal Jun 29, 2017
22b85dd
Merge pull request #19 from vuejs-fr/api
Kocal Jun 29, 2017
d53f837
Merge branch 'dev' of https://github.com/vuejs-fr/vuex into dev
MachinisteWeb Jun 29, 2017
44bcc98
FR review with officials terms done.
MachinisteWeb Jun 29, 2017
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
8 changes: 4 additions & 4 deletions docs/fr/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@
- [Vous cherchez la documentation de la v1.0 ?](https://github.com/vuejs/vuex/tree/1.0/docs)
- [Release Notes](https://github.com/vuejs/vuex/releases)
- [Installation](installation.md)
- [Qu'est-ce que Vuex ?](intro.md)
- [Débuter](getting-started.md)
- [Vuex, qu'est-ce que c'est ?](intro.md)
- [Pour commencer](getting-started.md)
- Concepts de base
- [State](state.md)
- [Getters](getters.md)
- [État](state.md)
- [Accesseurs](getters.md)
- [Mutations](mutations.md)
- [Actions](actions.md)
- [Modules](modules.md)
Expand Down
46 changes: 25 additions & 21 deletions docs/fr/actions.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Les actions sont similaires aux mutations, à la différence que :

- Au lieu de modifier le state, les actions committent des mutations.
- Au lieu de modifier l'état, les actions actent des mutations.
- Les actions peuvent contenir des opérations asynchrones.

Enregistrons une simple action :
Expand All @@ -25,9 +25,9 @@ const store = new Vuex.Store({
})
```

Les handlers d'action reçoivent un objet contexte qui expose le même set de méthodes/propriétés que l'instance du store, donc vous pouvez appeler `context.commit` pour commiter une mutation, ou accéder au state et aux getters via `context.state` et `context.getters`. Nous verrons pourquoi cet objet contexte n'est pas l'instance du store elle-même lorsque nous présenterons les [Modules](moduels.md) plus tard.
Les gestionnaires d'action reçoivent un objet contexte qui expose le même ensemble de méthodes et propriétés que l'instance du store, donc vous pouvez appeler `context.commit` pour acter une mutation, ou accéder à l'état et aux accesseurs via `context.state` et `context.getters`. Nous verrons pourquoi cet objet contexte n'est pas l'instance du store elle-même lorsque nous présenterons les [Modules](modules.md) plus tard.

En pratique, nous utilisons souvent la [destructuration d'argument](https://github.com/lukehoban/es6features#destructuring) (*argument destructuring*) pour simplifier quelque peu le code (particulièrement si nous avons besoin d'appeler `commit` plusieurs fois) :
En pratique, nous utilisons souvent la [destructuration d'argument](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs/Affecter_par_d%C3%A9composition) pour simplifier quelque peu le code (particulièrement si nous avons besoin d'appeler `commit` plusieurs fois) :

``` js
actions: {
Expand All @@ -37,7 +37,7 @@ actions: {
}
```

### Dispatcher des actions dans les composants
### Propager des actions dans les composants

Les actions sont déclenchées par la méthode `store.dispatch` :

Expand All @@ -57,47 +57,48 @@ actions: {
}
```

Les actions prennent en charge le même format de payload et *object-style dispatch* :
Les actions prennent également en charge les paramètres additionnels (« payload ») et les objets pour propager :

``` js
// dispatcher avec un payload
// propager avec un paramètre additionnel
store.dispatch('incrementAsync', {
amount: 10
})

// dispatcher avec un object
// propager avec un objet
store.dispatch({
type: 'incrementAsync',
amount: 10
})
```

Un exemple plus pratique d'une application du monde réel serait une action pour check-out un panier d'achats, ce qui implique **d'appeler une API asynchrone** et de **comitter de multiples mutations** :
Un exemple concret d'application serait une action pour vider un panier d'achats, ce qui implique **d'appeler une API asynchrone** et d'**acter de multiples mutations** :

``` js
actions: {
checkout ({ commit, state }, products) {
// sauvegarder les articles actuellement dans le panier
const savedCartItems = [...state.cart.added]
// envoyer la requête de checkout, et vider le panier
// envoyer la requête de checkout,
// et vider le panier
commit(types.CHECKOUT_REQUEST)
// l'API du shop prend un callback success et un callback failure
// l'API de la boutique en ligne prend une fonction de rappel en cas de succès et une autre en cas d'échec
shop.buyProducts(
products,
// handle success
// gérer le succès
() => commit(types.CHECKOUT_SUCCESS),
// handle failure
// gérer l'échec
() => commit(types.CHECKOUT_FAILURE, savedCartItems)
)
}
}
```

Notez que nous procédons à un flux d'opérations asynchrones, et enregistrons les effets de bord (mutation du state) de l'action en les committant.
Notez que nous procédons à un flux d'opérations asynchrones, et enregistrons les effets de bord (mutation de l'état) de l'action en les actant.

### Dispatcher des actions dans les composants
### Propager des actions dans les composants

Vous pouvez dispatcher des actions dans les composants avec `this.$store.dispatch('xxx')`, ou en utilisant le helper `mapActions` qui attache les méthodes du composant aux appels de `store.dispatch` (nécessite l'injection de `store` à la racine) :
Vous pouvez propager des actions dans les composants avec `this.$store.dispatch('xxx')`, ou en utilisant la fonction utilitaire `mapActions` qui attache les méthodes du composant aux appels de `store.dispatch` (nécessite l'injection de `store` à la racine) :

``` js
import { mapActions } from 'vuex'
Expand All @@ -106,10 +107,13 @@ export default {
// ...
methods: {
...mapActions([
'increment' // attacher this.increment() à this.$store.dispatch('increment')
'increment' // attacher `this.increment()` à `this.$store.dispatch('increment')`

// `mapActions` supporte également les paramètres additionnels :
'incrementBy' // attacher `this.incrementBy(amount)` à `this.$store.dispatch('incrementBy', amount)`
]),
...mapActions({
add: 'increment' // attacher this.add() à this.$store.dispatch('increment')
add: 'increment' // attacher `this.add()` à `this.$store.dispatch('increment')`
})
}
}
Expand All @@ -119,7 +123,7 @@ export default {

Les actions sont souvent asynchrones, donc comment savoir lorsqu'une action est terminée ? Et plus important, comment composer plusieurs actions ensemble pour manipuler des flux asynchrones plus complexes ?

La première chose à savoir est que `store.dispatch` retourne la valeur retournée par le handler de l'action déclenchée, vous pouvez donc retourner une Promise :
La première chose à savoir est que `store.dispatch` peut gérer la Promesse (« Promise ») retournée par le gestionnaire d'action déclenché et par conséquent vous pouvez également retourner une Promesse :

``` js
actions: {
Expand Down Expand Up @@ -158,17 +162,17 @@ actions: {
Pour finir, nous pouvons utiliser de [async / await](https://tc39.github.io/ecmascript-asyncawait/), une fonctionnalité JavaScript qui sera disponible très bientôt, nous pouvons composer nos actions ainsi :

``` js
// sachant que getData() et getOtherData() retournent des Promises
// sachant que `getData()` et `getOtherData()` retournent des Promesses.

actions: {
async actionA ({ commit }) {
commit('gotData', await getData())
},
async actionB ({ dispatch, commit }) {
await dispatch('actionA') // wait for actionA to finish
await dispatch('actionA') // attendre que `actionA` soit finie
commit('gotOtherData', await getOtherData())
}
}
```

> Il est possible pour un `store.dispatch` de déclencher plusieurs handlers d'action dans différents modules. Dans ce genre de cas, la valeur retournée sera une Promise qui se résoud quand tous les handlers déclenchés ont été résolus.
> Il est possible pour un `store.dispatch` de déclencher plusieurs gestionnaires d'action dans différents modules. Dans ce genre de cas, la valeur retournée sera une Promesse qui se résoud quand tous les gestionnaires déclenchés ont été résolus.
42 changes: 29 additions & 13 deletions docs/fr/getters.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
# Accesseurs

# Getters

Parfois nous avons besoin de calculer des valeurs basées sur le state du store, par exemple pour filtrer une liste d'éléments et les compter :
Parfois nous avons besoin de calculer des valeurs basées sur l'état du store, par exemple pour filtrer une liste d'éléments et les compter :

``` js
computed: {
Expand All @@ -11,9 +10,11 @@ computed: {
}
```

Si plus d'un composant a besoin d'utiliser cela, il nous faut ou bien dupliquer cette fonction, ou bien l'extraire dans un helper séparé et l'importer aux endroits nécessaires — les deux idées sont loin d'être idéales.
Si plus d'un composant a besoin d'utiliser cela, il nous faut ou bien dupliquer cette fonction, ou bien l'extraire dans une fonction utilitaire séparée et l'importer aux endroits nécessaires. Les deux idées sont loin d'être idéales.

Vuex nous permet de définir des accesseurs (« getters ») dans le store. Voyez-les comme les propriétés calculées des stores. Comme pour les propriétés calculées, le résultat de l'accesseur est mis en cache en se basant sur ses dépendances et il ne sera ré-évalué quand l'une de ses dépendances aura changé.

Vuex nous permet de définir des "getters" dans le store (voyez-les comme les computed properties des store). Les getters prennent le state en premier argument :
Les accesseurs prennent l'état en premier argument :

``` js
const store = new Vuex.Store({
Expand All @@ -31,13 +32,13 @@ const store = new Vuex.Store({
})
```

Les getters seront exposé sur l'objet `store.getters` :
Les accesseurs seront exposés sur l'objet `store.getters` :

``` js
store.getters.doneTodos // -> [{ id: 1, text: '...', done: true }]
```

Les getters recevront également les autres getters en second argument :
Les accesseurs recevront également les autres accesseurs en second argument :

``` js
getters: {
Expand All @@ -62,17 +63,32 @@ computed: {
}
```

### Le helper `mapGetters`
Vous pouvez aussi passer des arguments aux accesseurs en retournant une fonction. Cela est particulièrement utile quand vous souhaitez interroger un tableau dans le store :

```js
getters: {
// ...
getTodoById: (state, getters) => (id) => {
return state.todos.find(todo => todo.id === id)
}
}
```

``` js
store.getters.getTodoById(2) // -> { id: 2, text: '...', done: false }
```

### La fonction utilitaire `mapGetters`

Le helper `mapGetters` attache simplement vos getters du store aux computed properties locales :
La fonction utilitaire `mapGetters` attache simplement vos accesseurs du store aux propriétés calculées locales :

``` js
import { mapGetters } from 'vuex'

export default {
// ...
computed: {
// rajouter les getters dans computed avec l'object spread operator
// rajouter les accesseurs dans `computed` avec l'opérateur de décomposition
...mapGetters([
'doneTodosCount',
'anotherGetter',
Expand All @@ -82,11 +98,11 @@ export default {
}
```

Si vous voulez attacher un getter avec un nom différent, utilisez un objet :
Si vous voulez attacher un accesseur avec un nom différent, utilisez un objet :

``` js
mapGetters({
// attacher this.doneCount à store.getters.doneTodosCount
...mapGetters({
// attacher `this.doneCount` à `store.getters.doneTodosCount`
doneCount: 'doneTodosCount'
})
```
22 changes: 11 additions & 11 deletions docs/fr/getting-started.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
# Débuter
# Pour commencer

Au cœur de chaque application Vuex, il y a le **store**. Un "store" est tout simplement un conteneur avec le **state** de votre application. Il y a deux choses qui différencient un store Vuex d'un simple objet global :
Au cœur de chaque application Vuex, il y a la **zone de stockage (« store »)**. Un « store » est tout simplement un conteneur avec l'**état (« state »)** de votre application. Il y a deux choses qui différencient un store Vuex d'un simple objet global :

1. Les stores Vuex sont réactifs. Quand les composants Vue y récupèrent le state, ils modifieront efficacement et de façon réactive si le state du store change.
1. Les stores Vuex sont réactifs. Quand les composants Vue y récupèrent l'état, ils se mettront à jour de façon réactive et efficace si l'état du store a changé.

2. Vous ne pouvez pas muter directement le state du store. La seule façon de modifier le state d'un store est de **commiter** explicitement des **mutations**. Cela assure que chaque état laisse un enregistrement traçable, et permette à des outils de mieux nous aider à comprendre nos applications.
2. Vous ne pouvez pas muter directement l'état du store. La seule façon de modifier l'état d'un store est d'**acter (« commit »)** explicitement des **mutations**. Cela assure que chaque état laisse un enregistrement traçable, et permet à des outils de nous aider à mieux appréhender nos applications.

### Le store le plus simple

> **NOTE:** Nous allons utiliser la syntaxe ES2015 dans les exemples de code pour le reste de la documentation. Si vous ne vous êtes pas encore penché dessus, [vous devriez](https://babeljs.io/docs/learn-es2015/) !

Après [avoir installé](installation.md) Vuex, nous allons créer un store. C'est assez simple — définissez juste un objet state initial et quelques mutations :
Après [avoir installé](installation.md) Vuex, nous allons créer un store. C'est assez simple ; définissez juste un objet d'état initial et quelques mutations :

``` js
// Make sure to call Vue.use(Vuex) first if using a module system
// Assurez vous d'appeler `Vuex.use(Vuex)` en premier lieu si vous utilisez un système de module

const store = new Vuex.Store({
state: {
Expand All @@ -27,18 +27,18 @@ const store = new Vuex.Store({
})
```

Maintenant, vous pouvez accéder à l'objet state avec `store.state`, et déclencher un changement de state avec la méthode `store.commit` :
Maintenant, vous pouvez accéder à l'objet d'état avec `store.state`, et déclencher un changement d'état avec la méthode `store.commit` :

``` js
store.commit('increment')

console.log(store.state.count) // -> 1
```

Encore une fois, la raison pour laquelle nous committons une mutation au lieu de modifier `store.state.count` directement, c'est parce que nous voulons le tracer explicitement. Cette simple convention rend votre intention plus explicite, ainsi vous pouvez raisonner plus facilement les changements de state en lisant votre code. De plus, cela nous donne l'opportunité d'implémenter des outils qui peuvent enregistrer chaque mutation, prendre des instantanés du state, ou même procéder à du debugging dans le temps.
Encore une fois, la raison pour laquelle nous actons une mutation au lieu de modifier `store.state.count` directement, c'est parce que nous voulons le tracer explicitement. Cette simple convention rend votre intention plus explicite, ainsi vous pouvez raisonner plus facilement les les changements d'état en lisant votre code. De plus, cela nous donne l'opportunité d'implémenter des outils qui peuvent enregistrer chaque mutation, prendre des instantanés de l'état, ou même procéder à de la visualisation d'état dans le temps.

Utiliser le state du store dans un composant implique simplement de retourner le state dans une *computed property*, car le state du store est réactif. Déclencher des changements signifie simplement commiter des mutations dans les méthodes du composant.
Utiliser l'état du store dans un composant implique simplement de retourner l'état dans une *propriété calculée*, car l'état du store est réactif. Déclencher des changements signifie simplement d'acter des mutations dans les méthodes du composant.

Voici un exemple de la [plus basique app Vuex de compteur](https://jsfiddle.net/n9jmu5v7/1269/).
Voici un exemple de l'[application de comptage Vuex la plus basique](https://jsfiddle.net/n9jmu5v7/1269/).
Copy link
Member

Choose a reason for hiding this comment

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

Laisse plutôt l'autre example, avoir accès à app permet de jouer avec

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Tu PR/ajustes https://github.com/vuejs/vuex/blob/dev/docs/en/getting-started.md dans le même sens ? Actuellement on l'a mis à jour à cause de là MàJ de l'original.

=> 1a37783

Copy link
Member

Choose a reason for hiding this comment

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

ah, mais c'est pour un problème sur safari. C'est peut être lié au fait d'avoir const.


Ensuite, nous allons examiner chaque concept de base plus en détails, et commençons avec le [State](state.md).
Ensuite, nous allons examiner chaque concept de base plus en détails, et commençons avec l'[État](state.md).
Binary file modified docs/fr/images/flow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/fr/images/vuex.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading