向Parse.User扩展/添加方法

时间:2019-01-15 05:15:13

标签: typescript parse-server back4app

试图找到扩展(添加功能);;men;women 2006;yes;34;15 2006;no;2;187 2007;yes;12;88 2007;no;465;- 的完整示例。有很多扩展其他对象的地方,但是似乎Parse.User(还有Parse.UserParse.Role)是特殊的例外。

那里有一些带有答案的SO帖子,但不幸的是,它们指向的链接是旧的parse.com网站,但未映射到新网站。

假设我们在Parse.Installation表/类中有一个名为User的附加字段,我想添加一个附加方法来检查该字段(可以使用IsAdmin,但是这只是一个例子)。据我所知,尽管有到处都是示例,但我还是“想”起来像这样:

Parse.User.getCurrent().get('IsAdmin)

再次,看起来很丑,但这是我所能找到的东西。还可以随时告诉我文档中是否有明显的答案,因为我整天都在ash头。

1 个答案:

答案 0 :(得分:1)

我使用下面的代码来管理我的用户。使用登录或注册方法后,可以看到带有结果的JSON。我希望下面的代码对您有用。

Parse.User.allowCustomUserClass(true);

export class User extends Parse.User {
  email: string;
  password: string;
  isAdmin: string;

  constructor() {
    super('_User');
  }

  doLogin(email: string, password: string) {
    Parse.User.logIn(email,  password).then(object => {
      console.log(object);
      this.isAdmin = object.get('isAdmin');
    }).catch(console.error);
  }

  doSignUp(username: string, email: string, password: string) {
    return makeAnAdmin(email, password);
  }

}

Parse.Object.registerSubclass('User', User);

const makeAnAdmin = async (email: string, password: string): Promise<User> => {
  return Parse.User.signUp(email, password,
    {
      email: email,
      isAdmin: false
    }
  );
}

如果仍然无法正常工作,请在此处粘贴您要面对的消息:)