Qual é a diferença entre definir uma propriedade em app.locals e chamar app.set ()?
Eu estou no processo de aprender Express - e pensando no melhor lugar para salvar dados de estilo de configuração. As opções disponíveis estão em app.locals ou app.set (settings) ... então:
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');
Isso também me permitiria usar o seguinte em meus pontos de vista:
<title>#{config.name}</title> // <title>My App</title>
Ou a alternativa é usar app.set da seguinte forma:
app.set('name', 'My App');
app.set('domain', 'myapp.com');
... e, em seguida, use isso na exibição:
<title>#{settings.name}</title>
Eu sei que ambos os métodos funcionam, mas estou lutando para determinar qual é o melhor método para usar. No momento, estou inclinado a usar app.locals, com o namespace extra 'app', pois acredito que haveria menos chance de conflitos com futuras atualizações e outros módulos se usar app.set.