You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Lazy Loading Routes (En) <br><br> *Cette page est en cours de traduction française. Revenez une autre fois pour lire une traduction achevée ou [participez à la traduction française ici](https://github.com/vuejs-fr/vue-router).*
1
+
# Le chargement à la volée
2
2
3
-
When building apps with a bundler, the JavaScript bundle can become quite large, and thus affect the page load time. It would be more efficient if we can split each route's components into a separate chunk, and only load them when the route is visited.
3
+
Pendant la construction d'applications avec un empaqueteur (« bundler »), le paquet JavaScript peut devenir un peu lourd, et donc cela peut affecter le temps de chargement de la page. Il serait plus efficace si l'on pouvait séparer chaque composant de route dans des fragments séparés, et de les charger uniquement lorsque la route est visitée.
4
4
5
-
Combining Vue's [async component feature](http://vuejs.org/guide/components.html#Async-Components) and webpack's [code splitting feature](https://webpack.js.org/guides/code-splitting-require/), it's trivially easy to
6
-
lazy-load route components.
7
-
8
-
All we need to do is define our route components as async components:
5
+
En combinant la [fonctionnalité de composant asynchrone](https://fr.vuejs.org/v2/guide/components.html#Composants-asynchrones) de Vue et la [fonctionnalité de séparation de code](https://webpack.js.org/guides/code-splitting-require/) de webpack, il est très facile de charger à la volée les composants de route.
6
+
7
+
Tout ce que nous avons à faire, c'est de définir les composants de notre route en tant que composants asynchrones :
9
8
10
9
```js
11
10
constFoo=resolve=> {
12
-
// `require.ensure` is webpack's special syntax for a code-split point.
11
+
// `require.ensure` est une syntaxe spéciale de webpack pour une séparation de code.
13
12
require.ensure(['./Foo.vue'], () => {
14
13
resolve(require('./Foo.vue'))
15
14
})
16
15
}
17
16
```
18
17
19
-
There's also an alternative code-split syntax using AMD style require, so this can be simplified to:
18
+
Il y a aussi une alternative à la syntaxe de séparation de code utilisant l'inclusion à la sauce AMD, cela peut être simplifié en :
20
19
21
20
```js
22
21
constFoo=resolve=>require(['./Foo.vue'], resolve)
23
22
```
24
23
25
-
Nothing needs to change in the route config, just use `Foo`as usual:
24
+
Rien n'a besoin d'être modifié dans la configuration de la route, utilisez `Foo`comme d'habitude.
26
25
27
26
```js
28
27
constrouter=newVueRouter({
@@ -32,14 +31,14 @@ const router = new VueRouter({
32
31
})
33
32
```
34
33
35
-
### Grouping Components in the Same Chunk
34
+
### Grouper des composants dans le même fragment
36
35
37
-
Sometimes we may want to group all the components nested under the same route into the same async chunk. To achieve that we need to use [named chunks](https://webpack.js.org/guides/code-splitting-require/#chunkname)by providing a chunk name to `require.ensure` as the 3rd argument:
36
+
Parfois on aimerait grouper tous les composants imbriqués sous la même route, dans un seul et même fragment asynchrone. Pour arriver à cela, nous avons besoin d'utiliser les [fragments nommés](https://webpack.js.org/guides/code-splitting-require/#chunkname)en donnant un nom au fragment en 3ème argument de `require.ensure`.
webpack will group any async module with the same chunk name into the same async chunk - this also means we don't need to explicitly list dependencies for `require.ensure`anymore (thus passing an empty array).
44
+
webpack groupera tous les modules asynchrones avec le même nom de fragment, dans le même fragment asynchrone. Cela signifie aussi que nous n'avons plus besoin de lister explicitement les dépendances pour `require.ensure`(équivaut à passer un tableau vide).
0 commit comments