# res.render

呈现 view 并将呈现的 HTML 字符串发送到客户端。

# 概要

res.render(view [, locals] [, callback])

# 描述

呈现 view 并将呈现的 HTML 字符串发送到客户端。可选参数:

  • locals,一个对象,其属性定义视图的局部变量。
  • callback,回调函数。如果提供,该方法将返回可能的错误和呈现的字符串,但不执行自动响应。当发生错误时,该方法在内部调用 next(err)

view 参数是一个字符串,它是要渲染的视图文件的文件路径。这可以是绝对路径,也可以是相对于 views 设置的路径。如果路径不包含文件扩展名,则 view engine 设置确定文件扩展名。如果路径确实包含文件扩展名,那么 Express 将加载指定模板引擎的模块(通过 require())并使用加载模块的 __express 函数渲染它。

有关详细信息,请参阅 使用 Express 模板引擎

注意: view 参数执行文件系统操作,例如从磁盘读取文件和评估 Node.js 模块,因此出于安全原因不应包含来自最终用户的输入。

局部变量 cache启用视图缓存。设置为true,开发时缓存视图;默认情况下,视图缓存在生产中启用。

// send the rendered view to the client
res.render('index')

// if a callback is specified, the rendered HTML string has to be sent explicitly
res.render('index', (err, html) => {
  res.send(html)
})

// pass a local variable to the view
res.render('user', { name: 'Tobi' }, (err, html) => {
  // ...
})
Last Updated: 6/17/2023, 6:57:19 PM