如何自定义登录?

时间:2017-11-03 04:15:13

标签: angular ngx-admin

我正在使用。我想在中自定义登录页面。有什么解决方案吗?或者最好在中创建一个新的登录页面,而不是自定义现有页面。

3 个答案:

答案 0 :(得分:9)

根据this linkthis issue 可以进行以下更改来自定义/扩展ngx-admin中现有的auth-pages / components(没有npm依赖)

首先将所有源文件从this repository folder复制到        您项目的'theme/components/auth'

    文件core.module.ts中的
  1. 更改了以下导入:
  2. import { NbAuthModule, NbDummyAuthStrategy } from '@nebular/auth'; 
    

    import { NbAuthModule, NbDummyAuthStrategy } from '../@theme/components/auth'; // '@nebular/auth';
    
      文件app-routing.module.ts中的
    1. 更改了以下导入
    2. import {
        NbAuthComponent,
        NbLoginComponent,
        NbLogoutComponent,
        NbRegisterComponent,
        NbRequestPasswordComponent,
        NbResetPasswordComponent,
      } from '@nebular/auth';
      

      import {
        NbAuthComponent,
        NbLoginComponent,
        NbLogoutComponent,
        NbRegisterComponent,
        NbRequestPasswordComponent,
        NbResetPasswordComponent,
      } from './@theme/components/auth'; //'@nebular/auth'
      

      4.在文件theme.module.ts中添加以下导入

      // this line in import part of the file
      import {NbAuthModule} from './components/auth';
      import {NbPasswordAuthStrategy} from "./components/auth/strategies";
      
      // inside of const NB_THEME_PROVIDERS
      NbAuthModule.forRoot({
        providers: {
          email: {
            service: NbPasswordAuthStrategy,
            config: {},
          }
        }
      }).providers,
      

      参考文献

答案 1 :(得分:1)

我建议您使用Ngx-admin现有登录页面,因为它很容易自定义。您只需通过设置端点进行设置,也可以通过复制ngx-admin文档中的源代码来修改现有文件。

答案 2 :(得分:1)

要使用自定义登录页面,您只需执行以下步骤。

注意:

我已经在页面文件夹中创建了登录组件。

enter image description here

版本

  

您的全局Angular CLI版本(8.3.9)大于本地版本   版本(8.0.2)。使用本地Angular CLI版本。

第1步

app-routing.module.ts

中用您的组件名称替换路由组件
 path: 'auth',
component: NbAuthComponent,
children: [
  {
    path: '',
    component: LoginComponent,
  },
  {
    path: 'login',
    component: LoginComponent,
  },

第2步

theme.modules.ts

中导入组件
  

位于/ src / app / @ theme内

 import {LoginComponent} from '../../app/pages/login/login.component'
 const COMPONENTS = [
 HeaderComponent,
 FooterComponent,
 SearchInputComponent,
 TinyMCEComponent,
 OneColumnLayoutComponent,
 ThreeColumnsLayoutComponent,
 TwoColumnsLayoutComponent,
 LoginComponent   // HERE
];

第3步

将组件放入 pages.module.ts

的声明中
declarations: [
PagesComponent,
LoginComponent,
],

结果

enter image description here