流星中的Js文件加载顺序

时间:2015-02-16 01:59:43

标签: meteor

在meteor docs中写道,首先加载project_root / lib文件夹中的所有文件;

我有这段代码:

//defined in /lib/utilties.js
String.prototype.capitalize = function(){
    return this.replace(/(^|\s)([a-z])/g, function(m, p1, p2) { 
        return p1 + p2.toUpperCase();
    });
};

和此:

//defined in /client/event-helpers/form.js
Template.form.helpers({
    fieldType: function(field) {
        return 'form-' + capitalize(field)
    }
});

这并不能说大写是不确定的;在/client/event-helpers/form.js中移动大写功能让它工作; 那么有人可以帮我理解流星中的文件加载优先级吗?为什么会这样?

2 个答案:

答案 0 :(得分:2)

您已根据加载顺序正确解释了文档,但这不是您的代码的问题。您已将capitalize添加到String原型中,但您将其用作全局函数。试试这个:

return 'form-' + field.capitalize();

答案 1 :(得分:0)

我认为你误解了这些文件。首先不加载lib目录中的文件。首先加载最低子目录中的文件。