如何在所有树枝页面中都可以访问的节点js中设置全局变量
How to set global variable in ndoe js that can be accessible in all twig page
我需要创建一些可以在所有 twig 模板中访问的变量,而不是将他添加到 express 中的所有渲染对象中。
或者我需要一个在控制器完成他的特征后添加这个变量的方法。
尝试使用 app.locals
http://expressjs.com/en/5x/api.html#app.locals
app.locals
app.locals 对象的属性是应用程序中的局部变量。
console.dir(app.locals.title)
// => 'My App'
console.dir(app.locals.email)
// => 'me@myapp.com'
一旦设置,app.locals 属性的值将在应用程序的整个生命周期内持续存在,而 res.locals 属性仅在请求的生命周期内有效。
您可以在应用程序内呈现的模板中访问局部变量。这对于为模板以及应用程序级数据提供辅助函数很有用。局部变量可通过 req.app.locals 在中间件中使用(参见 req.app)
app.locals.title = 'My App'
app.locals.strftime = require('strftime')
app.locals.email = 'me@myapp.com'
我需要创建一些可以在所有 twig 模板中访问的变量,而不是将他添加到 express 中的所有渲染对象中。
或者我需要一个在控制器完成他的特征后添加这个变量的方法。
尝试使用 app.locals
http://expressjs.com/en/5x/api.html#app.locals
app.locals app.locals 对象的属性是应用程序中的局部变量。
console.dir(app.locals.title)
// => 'My App'
console.dir(app.locals.email)
// => 'me@myapp.com'
一旦设置,app.locals 属性的值将在应用程序的整个生命周期内持续存在,而 res.locals 属性仅在请求的生命周期内有效。
您可以在应用程序内呈现的模板中访问局部变量。这对于为模板以及应用程序级数据提供辅助函数很有用。局部变量可通过 req.app.locals 在中间件中使用(参见 req.app)
app.locals.title = 'My App'
app.locals.strftime = require('strftime')
app.locals.email = 'me@myapp.com'