我正在学习Express - 并思考最佳的保存配置数据的位置。可用的选项是在app.locals或app.set(设置)中 ... 所以:
app.locals({ config: {
name: 'My App',
domain: 'myapp.com',
viewPath: __dirname+'/views',
viewEngine: 'jade'
port: 3000
} });
app.set('view engine', app.locals.config.viewEngine || 'jade');
这也使我能在我的视图中使用以下内容:<title>#{config.name}</title> // <title>My App</title>
或者另一种方法是像这样使用app.set:
app.set('name', 'My App');
app.set('domain', 'myapp.com');
... 然后在视图中使用它:
<title>#{settings.name}</title>
我知道这两种方法都可以,但我不确定哪种方法更好。目前我倾向于使用带有额外“app”命名空间的app.locals,因为我认为使用app.set会更容易与未来更新和其他模块发生冲突。