表达存储在单独文件

时间:2015-11-02 23:14:03

标签: javascript node.js express

目前我在app.js中设置我的快速应用设置,如下所示:

app.set('siteCategoryNo', '900');
app.set('brandCompanyName', 'Website Name');
app.set('brandDomainName', 'website.com');

相反,我想将它们存储在单独的文件 app-config.js 中,如下所示:

/*  
 * app-config.js
 */
module.exports = function () {

    var appSettings = {

        settings: [{
            key: 'siteCategoryNo',
             val: '900'
        }, {
            key: 'brandCompanyName',
            val: 'website name'
        }, {
            key: 'brandDomainName',
            val: 'website.com'
        }]

        // all other settings omitted

    }

    return appSettings;

};

这是 app.js 的样子:

// all other code omitted
var configSettings = require('./app-config.js')();

for (var i = 0; i <= configSettings.settings.length; i++) {
    var applicationSettings = configSettings.settings.pop();
    app.set(applicationSettings.key, applicationSettings.val);
}

我这样做是因为我正在与另一位开发者建立一个几乎相同的网站,但我们有一些不同的设置和路线。我们希望这会使合并变得更容易。

关联数组上的循环(如果这就是你所说的那个)仅在对象数组位于 app.js 文件中时才有效。我想把它分成 app-config.js ,但是一旦我没有设置我的vars。

这可能吗?

1 个答案:

答案 0 :(得分:1)

你可以这样做:

public class AboutFtw{
   public Int64 id { get; set;}
   [DataType(DataType.Text)]
   [Display(Name = "Title")]
   public string title { get; set; }
   [DataType(DataType.Text)]
   [Display(Name = "Content in Detail")]
   public string detail_contents { get; set; }
}

然后从module.exports = function (app) { var appSettings = { settings: [{ key: 'siteCategoryNo', val: '900' }, { key: 'brandCompanyName', val: 'website name' }, { key: 'brandDomainName', val: 'website.com' }] // all other settings omitted } appSettings.settings.forEach(function(setting){ app.set(setting.key, setting.val); }); return app; };

app.js