В чем разница между установкой свойства в app.locals и вызовом app.set ()?

Я нахожусь в процессе изучения Express - и думаю о лучшем месте для сохранения данных стиля конфигурации. Доступные параметры находятся в app.locals или app.set (settings) ... так:

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.locals с дополнительным «app». Пространство имен, как я полагаю, было бы меньше вероятности конфликтов с будущими обновлениями и другими модулями при использовании app.set.

Ответы на вопрос(4)

Ваш ответ на вопрос