Skip to content

Commit

Permalink
Merge pull request #10 from vuejs-fr/structure
Browse files Browse the repository at this point in the history
Traduction de `structure.md`
  • Loading branch information
MachinisteWeb committed May 20, 2017
2 parents fb8f0c4 + 30816d5 commit c11e884
Showing 1 changed file with 14 additions and 14 deletions.
28 changes: 14 additions & 14 deletions docs/en/structure.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,32 @@
# 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 quand à la structure de code à utiliser. Il impose plutôt de respecter des principes de haut niveau :

1. Application-level state is centralized in the store.
1. L'état de l'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 l'état est d'acter 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 dès lors à séparer les actions, mutations et accesseurs 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
├── main.js
├── api
│   └── ... # abstractions for making API requests
│   └── ... # abstraction pour faire des requêtes par API
├── components
│   ├── 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
   ├── cart.js # module de panier
   └── products.js # module de produit
```

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 de panier d'achat](https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart).

0 comments on commit c11e884

Please sign in to comment.