在Nebular Register Component

时间:2019-12-04 11:25:37

标签: angular nebular

我已经使用它们的所有组件为星云设置了身份验证,并使用NbPasswordAuthStrategy作为身份验证策略。

寄存器组件当前具有以下输入,

  1. 全名
  2. 电子邮件
  3. 密码
  4. 重复密码

但是我的API要求我使用名字和姓氏而不是全名。 如何配置框架以使其适合我的自定义需求?

我已经研究了如何执行此操作,但未得出任何结果。 NbPasswordAuthStrategy设置既没有自定义表单的任何方式,也没有提供自定义表单的示例。

我的身份验证配置如下

{
  strategies: [
    NbPasswordAuthStrategy.setup({
      name: 'email',
      token: {
        class: NbAuthJWTToken,
        key: 'token'
      },
      baseEndpoint: 'api',
      login: {
        endpoint: '/auth/login',
        redirect: {
          success: '/pages/dashboard',
          failure: null,
        },
      },
      register: {endpoint: '/auth/register'},
    }),
  ],
  forms: {
    logout: {
      strategy: 'email'
    }
  },
} 

2 个答案:

答案 0 :(得分:1)

您无法通过auth模块配置自定义auth组件,而是需要扩展和自定义Nebular auth组件。这是guide

答案 1 :(得分:0)

你可以像这样改变有效载荷

  this.nbAuthService.authenticate('register', {
    fullName: 'fullName',
    password: 'password',
    email: 'email',
    repeatedPassword: 'repeatedPassword',
  }).subscribe(data => {
    this.router.navigate([data.getRedirect()]);
  });