【问题标题】:Meteor - Reference error from publish callMeteor - 来自发布调用的引用错误
【发布时间】:2014-10-02 21:31:30
【问题描述】:

我正在尝试在线程中实现搜索:Meteor publish/subscribe strategies for unique client-side collections。我已将函数包装在 Meteor.startup 中,如下所示,但在 getSearchUsers 函数调用中仍然出现引用错误。

Meteor.startup(function () {

    function getSearchUsers(query) {

        var re = new RegExp(query, "i");
        return Users.find({name: {$regex: re}});
    }

});

【问题讨论】:

    标签: javascript meteor


    【解决方案1】:

    可能是变量作用域。尝试用全局变量定义写出方法:

    getSearchUsers = function(query) {
    
        var re = new RegExp(query, "i");
        return Users.find({name: {$regex: re}});
    }
    

    【讨论】:

    • 谢谢阿克沙特。我已经尝试过了,但我得到了同样的错误
    • 啊服务器发布也需要包裹在 Meteor.startup 中
    • @RhysBartels-Waller 不必这样做,但如果这样对问题进行了排序,那么您也会遇到文件加载顺序问题。此 getSearchUsers 方法是在您的发布功能之后定义的。见docs.meteor.com/#structuringyourapp
    • getSearchUsers 在 /lib/search.js 中,所以不应该先加载吗?
    • 这取决于,您正在运行的文件在哪里?它是否也在 lib 中,文件名以小于 s 的字母开头?
    猜你喜欢
    • 2016-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-07
    • 2014-04-22
    • 2011-05-02
    相关资源
    最近更新 更多