From 6fec9e4f50e1c514a32bc6d813c55d9705fa6166 Mon Sep 17 00:00:00 2001 From: Bruno Lesieur Date: Sat, 20 May 2017 11:00:19 +0200 Subject: [PATCH 1/2] Starting structure.md review Signed-off-by: Bruno Lesieur --- docs/en/structure.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/en/structure.md b/docs/en/structure.md index 2ba11e37b..41c94d3ed 100644 --- a/docs/en/structure.md +++ b/docs/en/structure.md @@ -1,16 +1,16 @@ -# Application Structure +# Structure d'une application -Vuex doesn't really restrict how you structure your code. Rather, it enforces a set of high-level principles: +Vuex ne vous restreint pas vraiment dans la façon dont vous voulez structurer votre code. Il impose plutôt un set de principes de haut niveau : -1. Application-level state is centralized in the store. +1. Le state d'application est centralisé dans le store. -2. The only way to mutate the state is by committing **mutations**, which are synchronous transactions. +2. La seule façon de muter le state est de commiter des **mutations**, qui sont des transactions synchrones. -3. Asynchronous logic should be encapsulated in, and can be composed with **actions**. +3. La logique asynchrone doit être composée et encapsulée dans des **actions**. -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. +Tant que vous suivez ces règles, c'est à vous de structurer votre projet. Si votre fichier de store devient trop gros, commencez simplement par séparer les actions, mutations et getters dans des fichiers séparés. -For any non-trivial app, we will likely need to leverage modules. Here's an example project structure: +Pour une application non-triviale, nous aurons probablement besoin de faire appel à des modules. Voici un exemple de structure de projet : ``` bash ├── index.html @@ -21,12 +21,12 @@ For any non-trivial app, we will likely need to leverage modules. Here's an exam │   ├── App.vue │   └── ... └── store - ├── index.js # where we assemble modules and export the store - ├── actions.js # root actions - ├── mutations.js # root mutations + ├── index.js # Là où l'on assemble nos modules et exportons le store + ├── actions.js # Actions racine + ├── mutations.js # Mutations racine └── modules    ├── cart.js # cart module    └── products.js # products module ``` -As a reference, check out the [Shopping Cart Example](https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart). +Vous pouvez jeter à un œil à [l'exemple Shopping Cart](https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart). From 30816d555cd25f8abb524c07e0adcf194a44804d Mon Sep 17 00:00:00 2001 From: Bruno Lesieur Date: Sat, 20 May 2017 11:26:10 +0200 Subject: [PATCH 2/2] Update des petits changements Signed-off-by: Bruno Lesieur --- docs/en/structure.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/en/structure.md b/docs/en/structure.md index 41c94d3ed..3469b301e 100644 --- a/docs/en/structure.md +++ b/docs/en/structure.md @@ -1,14 +1,14 @@ # Structure d'une application -Vuex ne vous restreint pas vraiment dans la façon dont vous voulez structurer votre code. Il impose plutôt un set de principes de haut niveau : +Vuex ne vous restreint pas quand à la structure de code à utiliser. Il impose plutôt de respecter des principes de haut niveau : -1. Le state d'application est centralisé dans le store. +1. L'état de l'application est centralisé dans le store. -2. La seule façon de muter le state est de commiter des **mutations**, qui sont des transactions synchrones. +2. La seule façon de muter l'état est d'acter des **mutations**, qui sont des transactions synchrones. 3. La logique asynchrone doit être composée et encapsulée dans des **actions**. -Tant que vous suivez ces règles, c'est à vous de structurer votre projet. Si votre fichier de store devient trop gros, commencez simplement par séparer les actions, mutations et getters dans des fichiers séparés. +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. Pour une application non-triviale, nous aurons probablement besoin de faire appel à des modules. Voici un exemple de structure de projet : @@ -16,17 +16,17 @@ Pour une application non-triviale, nous aurons probablement besoin de faire appe ├── index.html ├── main.js ├── api -│   └── ... # abstractions for making API requests +│   └── ... # abstraction pour faire des requêtes par API ├── components │   ├── App.vue │   └── ... └── store - ├── index.js # Là où l'on assemble nos modules et exportons le store - ├── actions.js # Actions racine - ├── mutations.js # Mutations racine + ├── index.js # là où l'on assemble nos modules et exportons le store + ├── actions.js # actions racine + ├── mutations.js # mutations racine └── modules -    ├── cart.js # cart module -    └── products.js # products module +    ├── cart.js # module de panier +    └── products.js # module de produit ``` -Vous pouvez jeter à un œil à [l'exemple Shopping Cart](https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart). +Vous pouvez jeter à un œil à l'[exemple de panier d'achat](https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart).