Skip to content
This repository was archived by the owner on Sep 3, 2024. It is now read-only.

Commit a022ab8

Browse files
committed
Translate api/fetch
1 parent d3ca872 commit a022ab8

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

Diff for: fr/api/pages-fetch.md

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
title: "API: La méthode fetch"
3+
description: La méthode fetch est utilisée pour remplir le store avant de rendre la page, c'est comme la méthode data sauf qu'elle ne définit pas les données du composant.
4+
---
5+
6+
# La méthode fetch
7+
8+
> La méthode fetch est utilisée pour remplir le store avant de rendre la page, c'est comme la méthode data sauf qu'elle ne définit pas les données du composant.
9+
10+
- **Type:** `Function`
11+
12+
La méthode `fetch` est appelée avant chaque chargement de composant (**uniquement pour les composants pages**). Elle peut être appelée côté serveur ou avant de nvaiguer sur la route correspondante.
13+
14+
La méthode `fetch` reçoit le [context](/api#context) comme premier argument, vous pouvez l'utiliser afin de récupérer des données et remplir le store. Pour rendre la méthode fetch asynchrone, **retourner une Promise**, nuxt.js attendra la résolution de la promise avand de faire le rendu du cmoposant.
15+
16+
Exemple de `pages/index.vue`:
17+
```html
18+
<template>
19+
<h1>Stars: {{ $store.state.stars }}</h1>
20+
</template>
21+
22+
<script>
23+
export default {
24+
fetch ({ store, params }) {
25+
return axios.get('http://my-api/stars')
26+
.then((res) => {
27+
store.commit('setStars', res.data)
28+
})
29+
}
30+
}
31+
</script>
32+
```
33+
34+
Vous pouvez également utiliser async/await pour rendre votre code plus propre:
35+
36+
```html
37+
<template>
38+
<h1>Stars: {{ $store.state.stars }}</h1>
39+
</template>
40+
41+
<script>
42+
export default {
43+
async fetch ({ store, params }) {
44+
let { data } = await axios.get('http://my-api/stars')
45+
store.commit('setStars', data)
46+
}
47+
}
48+
</script>
49+
```

0 commit comments

Comments
 (0)