Skip to content

Instantly share code, notes, and snippets.

@peterbabic
Last active May 8, 2019 21:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save peterbabic/7340cdaed731101d8b809c28ace84329 to your computer and use it in GitHub Desktop.
Save peterbabic/7340cdaed731101d8b809c28ace84329 to your computer and use it in GitHub Desktop.
Difference between Nuxt default server and Nuxt Express server
diff -x node_modules -x package-lock.json -x .nuxt --color -r default-server/nuxt.config.js express-server/nuxt.config.js
1c1
< import pkg from './package'
---
> const pkg = require('./package')
3c3,4
< export default {
---
>
> module.exports = {
diff -x node_modules -x package-lock.json -x .nuxt --color -r default-server/package.json express-server/package.json
2c2
< "name": "default-server",
---
> "name": "express-server",
8c8
< "dev": "nuxt",
---
> "dev": "cross-env NODE_ENV=development nodemon server/index.js --watch server",
10c10
< "start": "nuxt start",
---
> "start": "cross-env NODE_ENV=production node server/index.js",
15c15,16
< "nuxt": "^2.4.0"
---
> "nuxt": "^2.4.0",
> "express": "^4.16.4"
diff -x node_modules -x package-lock.json -x .nuxt --color -r default-server/pages/index.vue express-server/pages/index.vue
6c6
< default-server
---
> express-server
Only in express-server: server
// express-server/server/index.js
const express = require('express')
const consola = require('consola')
const { Nuxt, Builder } = require('nuxt')
const app = express()
// Import and Set Nuxt.js options
let config = require('../nuxt.config.js')
config.dev = !(process.env.NODE_ENV === 'production')
async function start() {
// Init Nuxt.js
const nuxt = new Nuxt(config)
const { host, port } = nuxt.options.server
// Build only in dev mode
if (config.dev) {
const builder = new Builder(nuxt)
await builder.build()
} else {
await nuxt.ready()
}
// Give nuxt middleware to express
app.use(nuxt.render)
// Listen the server
app.listen(port, host)
consola.ready({
message: `Server listening on http://${host}:${port}`,
badge: true
})
}
start()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment