首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从控制器内部获取配置(要求从控制器获得配置)?

如何从控制器内部获取配置(要求从控制器获得配置)?
EN

Stack Overflow用户
提问于 2014-07-07 13:45:52
回答 2查看 2.3K关注 0票数 3

我使用完全默认的Kraken.js应用程序。

我想在一个.dust文件中为config.js模板(选择选项)定义一些信任。那我就得把这些秘密交到我的控制器里。如何在控制器中获得配置?下面是一个示例代码:

代码语言:javascript
复制
'use strict';
var Post = require('../../models/post');
var mongoose = require("mongoose");

// How to get config, for example, here??
var config = require(".....config.....")


module.exports = function (router) {


    // or how to get a config here as the third argument of a function, for example?
    router.get('/', function (req, res) {

        // Here I want to get data from config
        res.render('posts', {
            foo: config.foo,
            bar: config.selects.selectOne.bar
        });
    }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-07 16:18:35

这个问题在krakenjs repo上被重复了。

假设您使用Kraken < v1.0,配置由nconf处理。nconf依赖于节点的模块缓存,提供了一个单例。换句话说,无论何时包含nconf,都会得到完全相同的实例。因此,您可以使用以下内容访问kraken配置:

代码语言:javascript
复制
var config = require('nconf');

var shouldHide = config.get('middleware:myModule:hideWidget');

if (shouldHide === true) {
  // ... do something ...
}

另一方面,如果您使用的是kraken >= v1.0,则kraken利用confit进行配置。由于confit-通过设计--不公开单个实例,因此建议您尝试完全在 handler中处理配置。同样,这也是建议的做法。

尽管如此,在某些情况下,您不能在初始阶段处理所有配置,而是在路由解析中处理。在这种情况下,我们将应用程序实例上的kraken配置存储为app.kraken。因此,只要您能够访问应用程序实例,就可以访问您的配置。

下面是一个从路由处理程序访问配置的示例:

代码语言:javascript
复制
// ./routes/secure.js
'use strict';

module.exports = function (req, res) {
  var shouldHide = req.app.kraken.get('middleware:myModule:hideWidget');
  if (shouldHide === true) {
    // ... do something ...
  }
};
票数 6
EN

Stack Overflow用户

发布于 2014-07-07 14:35:47

您可以添加一个config.json文件,并从NPM导入"nconf“包。

代码语言:javascript
复制
var nconf = require('nconf');

nconf.env().file({ file: 'config.json' });

var adminUsername = nconf.get("ADMIN");

在你的config.json中:

代码语言:javascript
复制
{
    "ADMIN": "Test",
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24612096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档