【问题标题】:Check if username exists in Meteor检查用户名是否存在于 Meteor 中
【发布时间】:2016-01-03 02:23:24
【问题描述】:

一直在寻找解决方案,但没有找到 Meteor。如果有,请告诉我。我想检查用户名是否已被占用。

我了解这仅适用于服务器端:

u = Accounts.findUserByUsername('foo');
console.log(u.username); #=> foo

我无法理解他们的发布/订阅,因为我只能看到基于当前用户的信息。流星是说我想要的不可能吗?

当用户在注册时填写详细信息时,如果他们正在使用的用户名已被占用,我希望他们(在输入时)收到提醒。但是这个逻辑我可以很容易地编写代码,但需要知道如何与服务器交谈以告诉我信息。

【问题讨论】:

    标签: meteor


    【解决方案1】:

    你可以为此编写一个 Meteor 方法:

    Meteor.methods({
      doesUserExist(name) {
        return Accounts.findUserByUsername(name) != null;
      }
    });
    

    请注意,您必须在服务器上而不是在客户端上定义此方法(例如,通过在 server 目录内的文件中定义它)。这样 Meteor 就不会尝试在客户端上模拟它(这会失败,因为那里没有定义 Accounts.findUserByUsername)。

    在用户键入时调用该方法:

    Meteor.call('doesUserExist', name, function(error, result) {
      // `result` is true if the user exists.
    });
    

    【讨论】:

    • 好的。生病试试这个,稍后再报告。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    • 2011-08-05
    • 1970-01-01
    • 2018-11-27
    • 2013-11-29
    • 2015-01-02
    相关资源
    最近更新 更多