api - Angular2 - Nebular 主题 API 端点

标签 api templates angular2-template nebular

我正在 Angular2 下开发应用程序,我选择 Nebular 前端 - https://akveo.github.io/nebular/#/home

文档对我来说并不是很详细,而且我也不是 Angular2 方面的专家。

我在部分方面陷入困境 - API 端点 https://akveo.github.io/nebular/#/docs/auth/configuring-a-provider

在哪里可以保存 API 基点?在哪个文件或文件的一部分中?

受影响的代码:

{
 baseEndpoint: 'http://...
...

我的代码(core.module.js):

import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';
import { CommonModule } from '@angular/common';
import { NbEmailPassAuthProvider, NbAuthModule } from '@nebular/auth';

import { throwIfAlreadyLoaded } from './module-import-guard';
import { DataModule } from './data/data.module';
import { AnalyticsService } from './utils/analytics.service';

import { environment } from './../../environments/environment';

const NB_CORE_PROVIDERS = [
  ...DataModule.forRoot().providers,
  ...NbAuthModule.forRoot({
    providers: {
      email: {
        service: NbEmailPassAuthProvider,
        config: {
          delay: 3000,
          login: {
            rememberMe: true,
          },
        },
      },
    },
    forms: {
      validation: {
        password: {
          required: true,
          minLength: 6,
          maxLength: 255,
        },
        email: {
          required: true,
        }
      }
    }
  }).providers,
  AnalyticsService
];

@NgModule({
  imports: [
    CommonModule,
  ],
  exports: [
    NbAuthModule,
  ],
  declarations: [],
})
export class CoreModule {
  constructor(@Optional() @SkipSelf() parentModule: CoreModule) {
    throwIfAlreadyLoaded(parentModule, 'CoreModule');
  }

  static forRoot(): ModuleWithProviders {
    return <ModuleWithProviders>{
      ngModule: CoreModule,
      providers: [
        ...NB_CORE_PROVIDERS,
      ],
    };
  }
}

最佳答案

我正在尝试让它发挥作用,并且我处于手册的同一部分。 据我所知, baseEndpoint: 'http://... 事物和其他配置位于身份验证提供程序 config 变量上。看起来它的类型是 NgEmailPassAuthProviderConfig (在 @nebular/auth/providers/email-pass-auth.options 上定义)。

@NgModule({
  imports: [
   // ...

   NbAuthModule.forRoot({
         providers: {
           email: {
             service: NbEmailPassAuthProvider,
             config: {
                baseEndpoint: 'http://localhost:8080', // <-- here
                login: {
                  rememberMe: true,
                },
             },
           },
         },
       }), 
  ],
});

我已经设法将其调用 Spring Rest API 上的 api 方法。我可以在浏览器上看到 HttpResponse 的 status: 200 但仍然收到“Oh snap! 出了点问题。”NbLoginComponent 上的消息。

关于api - Angular2 - Nebular 主题 API 端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47113035/

相关文章:

php - 如何聚合 API 数据?

c++ - 类模板中的 Typedef 评估

c++ - 与字符串一起使用时对函数模板的 undefined reference (GCC)

javascript - NgFor 无法工作 Angular 2

Angular ContentChildren 获取指令输入和 TemplateRef

Angular2 - 将 ngModel 绑定(bind)到属性的引用

javascript - 在 Twitter 上获取/用户/显示/返回错误 :400 and Error:404 (AJAX)

java - 哪个 PDF 生成 API (Java) 支持古吉拉特语字体?

iOS swift : App Transport Security has blocked a cleartext HTTP (http://) resource

c++ - 模板和重载 istream