如何在express js中访问使用app.set()设置的variables
如何访问variables设置使用快递的app.set()
例如
app.set('view engine','jade'); app.set('jsDirectory',/js/');
app.set('view engine','jade'); app.set('jsDirectory',/js/');
从指南,我明白,我可以使用app.get(<key>)
访问相同,但这是console.log(app.get('view engine'))
。
{路由器: {app: {stack:[Object], domain:null, _events:[Object], _maxListeners:10, _connections:0, 连接:[Getter / Setter], allowHalfOpen:true, _handle:null, httpAllowHalfOpen:false, caching:{}, 设置:[对象], redirect:{}, isCallbacks:{}, _locals:[对象], dynamicViewHelpers:{}, errorHandlers:[], 路线:'/', 路线:[圆形], 路由器:[Getter], root:'C:\\ Users \\ Shahal \\ Works \\ App', 楷模: {}, 扩展名:{}, disconnectSchemas:[Function:disconnectSchemas], 护照:[对象]}, 路线:{}, params:{}, _params:[], 中间件:[function]}}
它们通过app.settings对象变为可用:
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']);
我知道这是2岁,但它仍然是谷歌popup的第一个链接,所以我认为这可能是适当的。
你也可以像这样设置你的variables
app.set('port', 3000);
后来拿到它
app.get('port');
我更喜欢这种方法,因为它更短,更直接。 这也是他们在Express 4.x文档中使用的方式。
app.get(name) Returns the value of name app setting, where name is one of strings in the app settings table.
app.set('view engine','hbs') **All are correct:** app.get('view engine') app.locals.settings['view engine'] app.settings['view engine']