Last active
May 8, 2019 21:33
-
-
Save peterbabic/7340cdaed731101d8b809c28ace84329 to your computer and use it in GitHub Desktop.
Difference between Nuxt default server and Nuxt Express server
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// 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