Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 如何从控制器中获取配置(从控制器中获取配置)?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用完全认的Kraken.js应用程序.

我想在config.js文件中为.dust模板(选择选项)定义一些配置.然后我需要在我的控制器中获得这些配置.我怎样才能在控制器中获得配置?这是一个示例代码

'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
        });
    }

解决方法

这个问题在 krakenjs repo重复.

假设你正在使用Kraken< v1.0,配置由nconf处理.nconf依赖节点的模块缓存,提供单例.换句话说,只要你包含nconf,你就会获得完全相同的实例.因此,您可以使用以下内容访问kraken配置:

var config = require('nconf');

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

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

另一方面,如果您使用的是kraken> = v1.0,则kraken会利用confit进行配置.由于confit-by设计 – 不公开单例,因此建议您尝试在onConfig handler中完全处理配置.再次,这是推荐的方法.

也就是说,在某些情况下,您无法在初始阶段处理所有配置,而是在路由解析时处理.对于那些时间,我们将kraken配置存储在应用程序实例上为app.kraken.因此,只要您有权访问您的应用实例,就可以访问您的配置.

以下是从路由处理程序访问该配置的示例:

// ./routes/secure.js
'use Strict';

module.exports = function (req,res) {
  var shouldHide = req.app.kraken.get('middleware:mymodule:hideWidget');
  if (shouldHide === truE) {
    // ... do something ...
  }
};
@H_801_32@

大佬总结

以上是大佬教程为你收集整理的node.js – 如何从控制器中获取配置(从控制器中获取配置)?全部内容,希望文章能够帮你解决node.js – 如何从控制器中获取配置(从控制器中获取配置)?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。