Как получить доступ к переменным, установленным с помощью app.set () в Express JS

Как мне получить доступ к переменным, установленным с помощью экспрессapp.set() например,


app.set('view engine','jade');
app.set('jsDirectory',/js/');

Из руководства я понимаю, что могу получить доступ к тому жеapp.get(), но это вывод.console.log(app.get('view engine'))

{ router:
   { app:
      { stack: [Object],
        domain: null,
        _events: [Object],
        _maxListeners: 10,
        _connections: 0,
        connections: [Getter/Setter],
        allowHalfOpen: true,
        _handle: null,
        httpAllowHalfOpen: false,
        cache: {},
        settings: [Object],
        redirects: {},
        isCallbacks: {},
        _locals: [Object],
        dynamicViewHelpers: {},
        errorHandlers: [],
        route: '/',
        routes: [Circular],
        router: [Getter],
        root: 'C:\\Users\\Shahal\\Works\\App',
        models: {},
        extensions: {},
        disconnectSchemas: [Function: disconnectSchemas],
        passport: [Object] },
     routes: {},
     params: {},
     _params: [],
     middleware: [Function] } }
 Linus Gustav Larsson Thiel13 нояб. 2012 г., 14:36
Похоже, вы работаете в Express 2.x? Документация на expressjs.com является документацией для express 3.x.

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

что это 2 года, но это все еще первая ссылка, которая появляется на Google, поэтому я подумал, что это может быть уместно.

Вы также можете установить свою переменную так

     app.set('port', 3000);

А потом возьми с

     app.get('port');

Я предпочитаю такой подход, потому что этокороче и прямее. Это также, как они используют вЭкспресс 4.x документация.

    app.get(name)
    Returns the value of name app setting, where name is one of strings in the app settings table. 
 NERDYLIZARD20 мар. 2017 г., 18:40
@KnewB Если этого не было раньше, express создаст новый и присвоит значение.
 KnewB24 февр. 2016 г., 21:39
Я мог бы что-то упустить, нопорт» ISN»т в спискетаблица настроек приложения, Так как же это работает?
Решение Вопроса

app.set('oneSetting', 'one');
app.set('twoSetting', 'two');
app.set('view engine','jade');

console.log(app.settings.oneSetting);
console.log(app.settings.twoSetting);
console.log(app.settings['view engine']);
app.set('view engine','hbs')
**All are correct:**
app.get('view engine')
app.locals.settings['view engine']
app.settings['view engine']

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