Want to take a look at our new docs? Our new docs are now in beta. Have fun!

API: nuxt.render(req, res)

nuxt.render(req, res)

你可以通过 nuxt.render 函数,把 Nuxt.js 变成你 Node.js 服务端的中间件。

例如,结合 Express.js 使用:

const { Nuxt, Builder } = require('nuxt')

const app = require('express')()
const isProd = process.env.NODE_ENV === 'production'
const port = process.env.PORT || 3000

// 用指定的配置对象实例化 Nuxt.js
const config = require('./nuxt.config.js')
config.dev = !isProd
const nuxt = new Nuxt(config)

// 用 Nuxt.js 渲染每个路由
app.use(nuxt.render)

// 在开发模式下启用编译构建和热加载
if (config.dev) {
  new Builder(nuxt).build().then(listen)
} else {
  listen()
}

function listen() {
  // 服务端监听
  app.listen(port, '0.0.0.0')
  console.log('Server listening on `localhost:' + port + '`.')
}

建议把 nuxt.render 放到中间件列表的最后面,因为它不会再调用 next() 方法,而是直接处理你 web 应用的页面渲染。

Contribution for this page is now closed. If you would like to contribute please check out our new docs are now in beta. Have fun!

Platinum Sponsors

StoryblokMoovweb Support Us