Skip to content

Commit d685338

Browse files
Merge pull request #17 from vuejs-fr/vuex-store
Relecture de `vuex-store.md`
2 parents 7f25508 + 85b5a13 commit d685338

File tree

1 file changed

+35
-33
lines changed

1 file changed

+35
-33
lines changed

en/guide/vuex-store.md

Lines changed: 35 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
---
22
title: Vuex Store
3-
description: Using a store to manage the state is important for every big application, that's why nuxt.js implements Vuex in its core.
3+
description: L'utilisation d'un store pour gérer l'état est important pour toutes les applications de taille importante, c'est pourquoi Vuex est implémenté au cœur de Nuxt.js.
44
---
55

6-
> Using a store to manage the state is important to every big application, that's why nuxt.js implement [vuex](https://github.com/vuejs/vuex) in its core.
6+
> L'utilisation d'un store pour gérer l'état est important pour toutes les applications de taille importante, c'est pourquoi [Vuex](https://vuex.vuejs.org/fr/) est implémenté au cœur de Nuxt.js.
77
8-
## Activate the Store
8+
## Activer le store
99

10-
Nuxt.js will look for the `store` directory, if it exists, it will:
10+
Nuxt.js recherchera le répertoire `store`. S'il existe, il :
1111

12-
1. Import Vuex
13-
2. Add `vuex` module in the vendors bundle
14-
3. Add the `store` option to the root `Vue` instance.
12+
1. importera Vuex,
13+
2. ajoutera le module `vuex` dans le paquetage vendors,
14+
3. ajoutera l'option `store` à l'instance racine de Vue.
1515

16-
Nuxt.js lets you have **2 modes of store**, choose the one you prefer:
16+
Nuxt.js vous laisse le choix entre **2 modes de store**, choisissez celui qui vous convient le mieux :
1717

18-
- **Classic:** `store/index.js` returns a store instance
19-
- **Modules:** every `.js` file inside the `store` directory is transformed as a [namespaced module](http://vuex.vuejs.org/en/modules.html) (`index` being the root module)
18+
- **Classique :** `store/index.js` retourne une instance de store.
19+
- **Modules :** chaque fichier `.js` dans le répertoire `store` est transformé en tant que [module avec son propre espace de nom](http://vuex.vuejs.org/fr/modules.html) (`index` étant le module racine)
2020

21-
## Classic mode
21+
## Mode classique
2222

23-
To activate the store with the classic mode, we create the `store/index.js` file which should export a method which returns a Vuex instance:
23+
Pour activer le store avec le mode classique, nous créons `store/index.js` qui devrait exporter une méthode qui renvoie une instance Vuex :
2424

2525
```js
2626
import Vuex from 'vuex'
@@ -41,21 +41,21 @@ const createStore = () => {
4141
export default createStore
4242
```
4343

44-
> We don't need to install `vuex` since it's shipped with nuxt.js
44+
> Pas besoin d'installer `vuex`, celui-ci étant livré avec Nuxt.js.
4545
46-
We can now use `this.$store` inside our components:
46+
Nous pouvons alors utiliser `this.$store` dans nos composants :
4747

4848
```html
4949
<template>
5050
<button @click="$store.commit('increment')">{{ $store.state.counter }}</button>
5151
</template>
5252
```
5353

54-
## Modules mode
54+
## Mode modules
5555

56-
> Nuxt.js lets you have a `store` directory with every file corresponding to a module.
56+
> Nuxt.js vous permet d'avoir un répertoire `store` dans lequel chaque fichier correspond à un module.
5757
58-
If you want this option, export the state as a function, and the mutations and actions as objects in `store/index.js` instead of a store instance:
58+
Si vous voulez cette option, exportez l'état, les mutations et les actions dans `store/index.js` au lieu de l'instance `store` :
5959

6060
```js
6161
export const state = () => ({
@@ -69,7 +69,8 @@ export const mutations = {
6969
}
7070
```
7171

72-
Then, you can have a `store/todos.js` file:
72+
Puis, vous pouvez avoir `store/todos.js` :
73+
7374
```js
7475
export const state = () => ({
7576
list: []
@@ -91,7 +92,8 @@ export const mutations = {
9192
}
9293
```
9394

94-
The store will be as such:
95+
Le store sera comme suit :
96+
9597
```js
9698
new Vuex.Store({
9799
state: { counter: 0 },
@@ -124,7 +126,7 @@ new Vuex.Store({
124126
})
125127
```
126128

127-
And in your `pages/todos.vue`, using the `todos` module:
129+
Et dans votre `pages/todos.vue`, utiliser le module `todos` :
128130

129131
```html
130132
<template>
@@ -133,7 +135,7 @@ And in your `pages/todos.vue`, using the `todos` module:
133135
<input type="checkbox" :checked="todo.done" @change="toggle(todo)">
134136
<span :class="{ done: todo.done }">{{ todo.text }}</span>
135137
</li>
136-
<li><input placeholder="What needs to be done?" @keyup.enter="addTodo"></li>
138+
<li><input placeholder="Qu'est-ce qui doit être fait ?" @keyup.enter="addTodo"></li>
137139
</ul>
138140
</template>
139141

@@ -163,11 +165,11 @@ export default {
163165
</style>
164166
```
165167

166-
<div class="Alert">You can also have modules by exporting a store instance, you will have to add them manually on your store.</div>
168+
<div class="Alert">Vous pouvez également avoir des modules en exportant une instance de store vous devrez les ajouter manuellement sur votre store.
167169

168170
### Plugins
169171

170-
You can add additional plugin to the store (in Modules Mode) putting it into the `store/index.js` file:
172+
Vous pouvez ajouter des plugins additionnels au store (en mode modules) en les ajoutant dans le fichier `store/index.js` :
171173

172174
```js
173175
import myPlugin from 'myPlugin'
@@ -185,19 +187,19 @@ export const mutations = {
185187
}
186188
```
187189

188-
More information about the plugins: [Vuex documentation](https://vuex.vuejs.org/en/plugins.html)
190+
Pour plus d'informations à propos des plugins, consultez la [documentation Vuex](https://vuex.vuejs.org/fr/plugins.html).
189191

190-
## The fetch Method
192+
## La méthode fetch
191193

192-
> The fetch method is used to fill the store before rendering the page, it's like the data method except it doesn't set the component data.
194+
> La méthode `fetch` est utilisée pour remplir le store avant de faire le rendu de la page, c'est comme la méthode `data` sauf qu'elle ne définit pas les données du composant.
193195
194-
More information about the fetch method: [API Pages fetch](/api/pages-fetch)
196+
Plus d'informations à propos de la méthode `fetch` dans [la partie Pages de l'API pour `fetch`](/api/pages-fetch).
195197

196-
## The nuxtServerInit Action
198+
## L'action nuxtServerInit
197199

198-
If the action `nuxtServerInit` is defined in the store, nuxt.js will call it with the context (only from the server-side). It's useful when we have some data on the server we want to give directly to the client-side.
200+
Si l'action `nuxtServerInit` est définie dans le store, Nuxt.js l'appellera avec le contexte (uniquement côté serveur). C'est utile lorsque nous disposons de données sur le serveur que nous voulons donner directement au client.
199201

200-
For example, let's say we have sessions on the server-side and we can access the connected user through `req.session.user`. To give the authenticated user to our store, we update our `store/index.js` to the following:
202+
Par exemple, disons que nous avons des sessions côté serveur et nous pouvons accéder à l'utilisateur connecté grâce à `req.session.user`. Pour fournir l'utilisateur authentifié à notre store, nous mettons à jour notre `store/index.js` comme suit :
201203

202204
```js
203205
actions: {
@@ -209,8 +211,8 @@ actions: {
209211
}
210212
```
211213

212-
> If you are using the _Modules_ mode of the Vuex store, only the primary module (in `store/index.js`) will receive this action. You'll need to chain your module actions from there.
214+
> Si vous utilisez le mode _Modules_ du store Vuex, seul le module principal (dans `store/index.js`) recevra cette action. Vous devrez chainer vos actions de module à partir de là.
213215
214-
The context is given to `nuxtServerInit` as the 2nd argument, it is the same as the `data` or `fetch` method except that `context.redirect()` and `context.error()` are omitted.
216+
Le contexte est fourni par `nuxtServerInit` comme deuxième argument. C'est le même que pour les méthodes `data` et `fetch` excepté que `context.redirect()` et `context.error()` sont omis.
215217

216-
> Note: Asynchronous `nuxtServerInit` actions must return a Promise to allow the `nuxt` server to wait on them.
218+
> Note : Les actions `nuxtServerInit` asynchrones doivent retourner une promesse pour permettre au serveur `nuxt` de les attendre.

0 commit comments

Comments
 (0)