Meteor包:添加自定义选项

时间:2015-08-14 06:44:58

标签: meteor

我已经创建了Meteor智能包,并希望将用户生成的自定义选项添加到API中。

然而,我因Meteor的自动加载订单而遇到问题

SocialButtons.config({
  facebook: false
});

这会运行一个添加默认值的配置块。

SocialButtons.config = function (options) {
  ... add to options if valid ...
};

反过来又获取了一组默认值:

var defaults = {
  facebook: true,
  twitter: true
}

将哪些内容混合到设置中。

var settings = _.extend(defaults, options);

...(program starts, uses settings)...

问题是一切都必须以正确的顺序运行。

  1. 创建SocialButtons对象
  2. 运行可选的SocialButtons.config()
  3. 创建设置&运行程序
  4. 如何在不知道用户放置可选配置的位置的情况下控制Meteor中的加载顺序?

    步骤2将位于不同的文件夹/文件中,但必须夹在步骤1和步骤1之间。 3。

2 个答案:

答案 0 :(得分:0)

您现在无法真正控制加载订单,因此无法保证,但首先会将文件放在/libs,但在您的情况下,它并不是真的重要的是它可能是其他东西,这是一个非常简单的包,你可以查看我如何设置默认选项的来源,并允许轻松替换那些https://github.com/voidale/meteor-bootstrap-alerts

答案 1 :(得分:0)

想出来了。

  1. 将您的包放入/lib目录。
  2. 包含一个设置功能,可在调用时设置设置,并加载数据
  3. 从启动功能
  4. 返回数据

    在这种情况下:

    SocialButtons.get = function () {
       return initButtons();
    }
    
    function initButtons() { ... settings, startup, return final value ... }