在sails.js钩子中提供默认配置选项的正确方法是什么?

在sails.js钩子中提供默认配置选项的正确方法是什么?,sails.js,sails-hook,Sails.js,Sails Hook,我正在做一个风帆钩(项目钩)。我想让它可配置,并需要一种方法来提供默认值 我找不到有关该网站的信息 下面是一个钩子示例: // api/hooks/customHook.js module.exports = function customHook(sails) { return { configure: function () { console.log("Configure: "); console.log(sails.config[this.config

我正在做一个风帆钩(项目钩)。我想让它可配置,并需要一种方法来提供默认值

我找不到有关该网站的信息

下面是一个钩子示例:

// api/hooks/customHook.js
module.exports = function customHook(sails) {
  return {
    configure: function () {
      console.log("Configure: ");
      console.log(sails.config[this.configKey]);
    },

    initialize: function (cb) {
      console.log("Initialize: ");
      console.log(sails.config[this.configKey]);
    },
  };
};
当我提升我的应用程序时,没有创建config/customhook.js文件,我会得到以下输出:

配置:
未定义
初始化:
未定义


我需要一种为可配置值定义默认值的方法(将其命名为configurableValue)。sails中是否有任何东西可以帮助我们解决问题,或者我们是否必须“手动”完成它,如果我们有嵌套的配置键,这可能会很痛苦:

// api/hooks/customHook.js
module.exports = function customHook(sails) {
  return {
    configure: function () {
      if (typeof sails.config[this.configKey] == "undefined") {
        sails.config[this.configKey] = {};
      }

      if (typeof sails.config[this.configKey].configurableValue == "undefined") {
        sails.config[this.configKey].configurableValue = "defaultValue";
      }
    },

    initialize: function (cb) {
      console.log("Initialize: ");
      console.log(sails.config[this.configKey]);
    },
  };
};
我知道有很多NPM模块可以帮助我,包括lodash,但我正在寻找sails推荐的方法