docs: write better desc, add template to server directory example

This commit is contained in:
Alper Doğan 2023-07-16 22:51:59 +03:00
parent 3f6ef13aaa
commit 808cce6035

View File

@ -5,9 +5,9 @@ description: Using server directory to create middlewares, plugins and API easil
# Server Directory
Nuxt scans files under server directory to create middlewares, plugins and API routes to create features to use inside components or pages.
Server directory can be used for creating API routes to implement reusable data fetching from remote server easily, middlewares for intercepting requests and responses and plugins to hook into lifecycle hooks.
Each file under these folders must return a function defined with `defineEventHandler()`.
Each file under these folders must return a default export `defineEventHandler()`.
## Server Routes
@ -23,11 +23,17 @@ export default defineEventHandler(() => {
```vue [components/Greet.vue]
<script setup lang="ts">
const {data} = await useFetch('/api/hello')
const { data } = await useFetch('/api/hello')
</script>
<template>
<div>
{{ data }}
</div>
</template>
```
This server route will return a data object that contains an object with content of `{greetings: 'traveler'}`.
This server route will return a data object that contains an object with content of `{greetings: 'traveler'}` printed in the template tag.
Server route file will automatically match with `GET` method and it can be changed by adding method names to file name such as: `.post`, `.put`, `.delete`.
Routes may accept parameters, body and query parameters to get some values.