mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-16 19:04:48 +00:00
1a39eff502
Co-authored-by: Dan Pastori <dan@521dimensions.com> Co-authored-by: Anthony Fu <anthonyfu117@hotmail.com> Co-authored-by: pooya parsa <pyapar@gmail.com>
1.4 KiB
1.4 KiB
Node.js function
Discover the Node.js function preset with Nitro to attach Nuxt as a middleware to any Node.js server.
::list
- Compatible with many Node.js servers
- Drop-in usage with express or native HTTP server
- Loads only the chunks required to render the request for optimal cold start timing ::
::alert{icon=IconPresets} Back to presets list. ::
Usage
You can use the Nuxt config to explicitly set the preset to use:
export default {
nitro: {
preset: 'node'
}
}
Or directly use the NITRO_PRESET
environment variable when running nuxt build
:
NITRO_PRESET=node npx nuxt build
Entry point
When running nuxt build
with the Node preset, the result will be an entry point exporting a function with the familiar (req, res) => {}
signature used in express, h3, etc.
::alert{type=warning} It is not recommended to use this preset directly, and particularly not with a 3rd-party server. ::
Example
Express middleware
import express from 'express'
import handler from './.output/server'
const app = express()
app.use(handler)
app.listen(3000)
Node server
import { createServer } from 'http'
import handler from './.output/server'
const server = createServer(handler)
server.listen(8080)