在Express.js中,app.locals 对象用于存储应用级别的变量数据。这些数据在整个应用的生命周期内都是持久的,可以被任何中间件或路由处理器访问。
app.locals 的主要作用包括:
-
全局变量存储:可以将一些常用的数据或配置信息存储在
app.locals中,这样在应用的任何部分都可以方便地访问,无需每次都重新计算或检索。 -
模板渲染:在渲染视图时,
app.locals中的变量会自动可用于模板。这使得向模板传递全局设置或用户信息变得非常便捷。 -
简化代码:通过使用
app.locals存储全局数据,可以减少在请求处理流程中需要传递的参数数量,从而简化中间件和路由处理函数的代码。
例如,如果你有一个全局的配置对象或者一些需要在多个路由和模板中使用的数据,你可以在应用启动时将这些数据添加到 app.locals,这样它们就可以在整个应用中被访问和使用,而无需重复定义或传递。