Skip to content

Commit 0f73e76

Browse files
committed
Merge branch 'working' into mutation
2 parents 73c8d0f + a943210 commit 0f73e76

File tree

11 files changed

+37
-37
lines changed

11 files changed

+37
-37
lines changed

docs/en/SUMMARY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
- [Pour commencer](getting-started.md)
1212
- Concepts de base
1313
- [État](state.md)
14-
- [Getters](getters.md)
14+
- [Accesseurs](getters.md)
1515
- [Mutations](mutations.md)
1616
- [Actions](actions.md)
1717
- [Modules](modules.md)

docs/en/getters.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# Getters
1+
# Accesseurs
22

3-
Sometimes we may need to compute derived state based on store state, for example filtering through a list of items and counting them:
3+
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 :
44

55
``` js
66
computed: {
@@ -10,9 +10,9 @@ computed: {
1010
}
1111
```
1212

13-
If more than one component needs to make use of this, we have to either duplicate the function, or extract it into a shared helper and import it in multiple places - both are less than ideal.
13+
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.
1414

15-
Vuex allows us to define "getters" in the store (think of them as computed properties for stores). Getters will receive the state as their 1st argument:
15+
Vuex nous permet de définir des accesseurs (« getters ») dans le store (oyez-les comme les propriétés calculées des stores). Les accesseurs prennent l'état en premier argument :
1616

1717
``` js
1818
const store = new Vuex.Store({
@@ -30,13 +30,13 @@ const store = new Vuex.Store({
3030
})
3131
```
3232

33-
The getters will be exposed on the `store.getters` object:
33+
Les accesseurs seront exposés sur l'objet `store.getters` :
3434

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

39-
Getters will also receive other getters as the 2nd argument:
39+
Les accesseurs recevront également les autres accesseurs en second argument :
4040

4141
``` js
4242
getters: {
@@ -51,7 +51,7 @@ getters: {
5151
store.getters.doneTodosCount // -> 1
5252
```
5353

54-
We can now easily make use of it inside any component:
54+
Nous pouvons maintenant facilement les utiliser dans n'importe quel composant :
5555

5656
``` js
5757
computed: {
@@ -61,7 +61,8 @@ computed: {
6161
}
6262
```
6363

64-
You can also pass arguments to getters by returning a function. This is particularly useful when you want to query an array in the store:
64+
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 :
65+
6566
```js
6667
getters: {
6768
// ...
@@ -75,18 +76,17 @@ getters: {
7576
store.getters.getTodoById(2) // -> { id: 2, text: '...', done: false }
7677
```
7778

79+
### La fonction utilitaire `mapGetters`
7880

79-
### The `mapGetters` Helper
80-
81-
The `mapGetters` helper simply maps store getters to local computed properties:
81+
La fonction utilitaire `mapGetters` attache simplement vos accesseurs du store aux propriétés calculées locales :
8282

8383
``` js
8484
import { mapGetters } from 'vuex'
8585

8686
export default {
8787
// ...
8888
computed: {
89-
// mix the getters into computed with object spread operator
89+
// rajouter les accesseurs dans `computed` avec l'opérateur de décomposition
9090
...mapGetters([
9191
'doneTodosCount',
9292
'anotherGetter',
@@ -96,11 +96,11 @@ export default {
9696
}
9797
```
9898

99-
If you want to map a getter to a different name, use an object:
99+
Si vous voulez attacher un accesseur avec un nom différent, utilisez un objet :
100100

101101
``` js
102102
...mapGetters({
103-
// map this.doneCount to store.getters.doneTodosCount
103+
// attacher `this.doneCount` à `store.getters.doneTodosCount`
104104
doneCount: 'doneTodosCount'
105105
})
106106
```

docs/en/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ C'est une application auto-suffisante avec les parties suivantes :
3636
Voici une représentation extrèmement simple du concept de « flux de donnée unidirectionnel » :
3737

3838
<p style="text-align: center; margin: 2em">
39-
<img style="max-width:450px;" src="./images/flow.png">
39+
<img style="width:100%;max-width:450px;" src="./images/flow.png">
4040
</p>
4141

4242
Cependant, la simplicité s'évapore rapidement lorsque nous avons **de multiples composants qui partagent un même état global** :

docs/en/state.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const Counter = {
2424

2525
Lorsque `store.state.count` change, cela entraînera la ré-évaluation de la propriété calculée, et déclenchera les actions associées au DOM.
2626

27-
Cependant, ce modèle oblige le composant à compter sur le singleton global du store. Lorsqu'on utilise un système de module, il est nécessaire d'importer le store dans tous les composants qui utilisent l'état du store, et il est également nécessaire de créer un jeu de test lorsque l'on teste le composant.
27+
Cependant, ce modèle oblige le composant à compter sur le singleton global du store. Lorsqu'on utilise un système de module, il est nécessaire d'importer le store dans tous les composants qui utilisent l'état du store, et il est également nécessaire de le simuler lorsque l'on teste le composant.
2828

2929
Vuex fournit un méchanisme pour « injecter » le store dans tous les composants enfants du composant racine avec l'option `store` (activée par `Vue.use(Vuex)`) :
3030

docs/en/structure.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,32 @@
1-
# Application Structure
1+
# Structure d'une application
22

3-
Vuex doesn't really restrict how you structure your code. Rather, it enforces a set of high-level principles:
3+
Vuex ne vous restreint pas quand à la structure de code à utiliser. Il impose plutôt de respecter des principes de haut niveau :
44

5-
1. Application-level state is centralized in the store.
5+
1. L'état de l'application est centralisé dans le store.
66

7-
2. The only way to mutate the state is by committing **mutations**, which are synchronous transactions.
7+
2. La seule façon de muter l'état est d'acter des **mutations**, qui sont des transactions synchrones.
88

9-
3. Asynchronous logic should be encapsulated in, and can be composed with **actions**.
9+
3. La logique asynchrone doit être composée et encapsulée dans des **actions**.
1010

11-
As long as you follow these rules, it's up to you how to structure your project. If your store file gets too big, simply start splitting the actions, mutations and getters into separate files.
11+
Tant que vous suivez ces règles, c'est à vous de structurer votre projet. Si votre fichier de store devient trop gros, commencez dès lors à séparer les actions, mutations et accesseurs dans des fichiers séparés.
1212

13-
For any non-trivial app, we will likely need to leverage modules. Here's an example project structure:
13+
Pour une application non-triviale, nous aurons probablement besoin de faire appel à des modules. Voici un exemple de structure de projet :
1414

1515
``` bash
1616
├── index.html
1717
├── main.js
1818
├── api
19-
│   └── ... # abstractions for making API requests
19+
│   └── ... # abstraction pour faire des requêtes par API
2020
├── components
2121
│   ├── App.vue
2222
│   └── ...
2323
└── store
24-
├── index.js # where we assemble modules and export the store
25-
├── actions.js # root actions
26-
├── mutations.js # root mutations
24+
├── index.js # là où l'on assemble nos modules et exportons le store
25+
├── actions.js # actions racine
26+
├── mutations.js # mutations racine
2727
└── modules
28-
   ├── cart.js # cart module
29-
   └── products.js # products module
28+
   ├── cart.js # module de panier
29+
   └── products.js # module de produit
3030
```
3131

32-
As a reference, check out the [Shopping Cart Example](https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart).
32+
Vous pouvez jeter à un œil à l'[exemple de panier d'achat](https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart).

docs/fr/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ C'est une app auto-contenue avec les parties suivantes :
3636
Voici une représentation extrèmement simple du concept de "one-way data flow" (_flux de données unidirectionnel_) :
3737

3838
<p style="text-align: center; margin: 2em">
39-
<img style="max-width:450px;" src="./images/flow.png">
39+
<img style="width:100%;max-width:450px;" src="./images/flow.png">
4040
</p>
4141

4242
Cependant, la simplicité s'évapore rapidement lorsque nous avons **de multiples composants qui partagent le même state** :

docs/ja/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ new Vue({
3838
これらは"単方向データフロー"のコンセプトの極めてシンプルな責務です:
3939

4040
<p style="text-align: center; margin: 2em">
41-
<img style="max-width:450px;" src="./images/flow.png">
41+
<img style="width:100%;max-width:450px;" src="./images/flow.png">
4242
</p>
4343

4444
しかし、単純さは、**共通の状態を共有する複数のコンポーネントを持ったときに**、すぐに破綻します:

docs/ja/mutations.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ export default {
179179

180180
### アクションへ向けて
181181

182-
状態変更を非同期に組み合わせることは、プログラムの動きを予測することを非常に困難にします。例えば、状態を変更する非同期コールバックを持った 2つのメソッドを両方呼び出しとき、それらがいつ呼び出されたか、どちらが先に呼び出されたかを、どうやって知ればよいのでしょう?これがまさに、状態変更と非同期の 2つの概念を分離したいという理由です。Vuex では**全てのミューテーションは同期的に行う**という作法になっています:
182+
状態変更を非同期に組み合わせることは、プログラムの動きを予測することを非常に困難にします。例えば、状態を変更する非同期コールバックを持った 2つのメソッドを両方呼び出すとき、それらがいつ呼び出されたか、どちらが先に呼び出されたかを、どうやって知ればよいのでしょう?これがまさに、状態変更と非同期の 2つの概念を分離したいという理由です。Vuex では**全てのミューテーションは同期的に行う**という作法になっています:
183183

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

docs/kr/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ new Vue({
3636
이것은 "단방향 데이터 흐름" 개념의 매우 단순한 도표입니다.
3737

3838
<p style="text-align: center; margin: 2em">
39-
<img style="max-width:450px;" src="./images/flow.png">
39+
<img style="width:100%;max-width:450px;" src="./images/flow.png">
4040
</p>
4141

4242
그러나 **공통의 상태를 공유하는 여러 컴포넌트** 가 있는 경우 단순함이 빠르게 저하됩니다.

docs/ru/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ new Vue({
3636
Вот простейшее представление концепции "однонаправленного потока данных":
3737

3838
<p style="text-align: center; margin: 2em">
39-
<img style="max-width:450px;" src="./images/flow.png">
39+
<img style="width:100%;max-width:450px;" src="./images/flow.png">
4040
</p>
4141

4242
Простота, к сожалению, быстро исчезает при появлении **нескольких компонентов, основывающихся на одном и том же состоянии**, когда:

docs/zh-cn/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ new Vue({
3636
以下是一个表示“单向数据流”理念的极简示意:
3737

3838
<p style="text-align: center; margin: 2em">
39-
<img style="max-width:450px;" src="./images/flow.png">
39+
<img style="width:100%;max-width:450px;" src="./images/flow.png">
4040
</p>
4141

4242
但是,当我们的应用遇到**多个组件共享状态**时,单向数据流的简洁性很容易被破坏:

0 commit comments

Comments
 (0)