backbase - 错误没有导出成员“HTTP_PARAMS_FACTORY”
问题描述
我正在学习https://bbacademy.learnupon.com/上的 Backbase Frontend Essentials 课程 - 任务是使用 RAML 生成数据模块(提供了 RAML)。我下载了提供的 RAML,按照教程进行操作,但是当我在浏览器中查看时,我的终端显示以下错误:
ERROR in libs/exchange-rate-data/src/exchange-rate-data.service.ts(5,33): error TS2305: Module '"../../../node_modules/@backbase/foundation-ang/data-http/backbase-foundation-ang-data-http"' has no exported member 'HTTP_PARAMS_FACTORY'.
libs/exchange-rate-data/src/exchange-rate-data.service.ts(5,54): error TS2305: Module '"../../../node_modules/@backbase/foundation-ang/data-http/backbase-foundation-ang-data-http"' has no exported member 'HttpParamsFactory'.
我没有碰过这个文件。这是我尝试过的:
- 检查我的节点版本 - 我在 v10.18.1 上(认为可能是旧版本是罪魁祸首),我的角度版本是 8。
- 运行
npm install
并npm update
更新 /node 模块 - 我检查了
../../../node_modules/@backbase/foundation-ang/data-http/backbase-foundation-ang-data-http
,果然没有找到HTTP_PARAMS_FACTORY
也没有HttpParamsFactory
- 检查 Backbase 文档
HTTP_PARAMS_FACTORY
和HttpParamsFactory
它的基础-ang/data-http API 的一部分。
我是后台新手,我认为这个错误来自我在教程中给出的代码,但我不确定。任何帮助,将不胜感激。
解决方案
我已经解决了这个问题,但不能 100% 确定以下所有内容是否都已解决。这就是我所做的:教程说要在版本 4.25 上安装 @backbase/foundation-ang,但该版本没有 HttpParamsFactory 类型别名,也没有 HTTP_PARAMS_FACTORY const,它们都在教程中给出的下载的 Raml 规范中引用。我切换到@backbase/foundation-ang 4.33.0 版。我还通过导入 HttpClientModule(讲师有但我默认没有)从提供的 RAML 中修改了模块文件,然后我修改了提供程序的数组。所以我最终的 exchange-rate-data.module.ts 文件现在看起来像这样:
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { InjectionToken, ModuleWithProviders, Optional } from "@angular/core";
import { HttpClientModule } from "@angular/common/http";
import { createServiceDataHttpConfig, DATA_HTTP_CONFIG, DataHttpModule, ServiceDataHttpConfig } from "@backbase/foundation-ang/data-http";
import { EXCHANGE_RATE_DATA_CONFIG, ExchangeRateDataService } from "./exchange-rate-data.service";
export const CONFIG_VALUE = new InjectionToken("ExchangeRateData Data Service :: Custom Http Config");
// export function createExchangeRateDataServiceDataHttpConfig(globalConfig: ServiceDataHttpConfig, serviceConfig?: Partial<ServiceDataHttpConfig>) {
// return createServiceDataHttpConfig(globalConfig, serviceConfig ? serviceConfig : { "servicePath": "" });
// }
@NgModule({
declarations: [],
imports: [
CommonModule,
DataHttpModule,
HttpClientModule
],
providers: [ExchangeRateDataService, {provide: CONFIG_VALUE, useValue: {
servicePath: '',
}}, {
provide: EXCHANGE_RATE_DATA_CONFIG,
useFactory: createServiceDataHttpConfig,
deps: [DATA_HTTP_CONFIG, CONFIG_VALUE],
}]
})
推荐阅读
- azure - 使用 Powershell 错误自动部署 Azure Sentinel
- python - 带有 concat 函数的 Leag Lag 和窗口函数
- python - 当数据点也有起点/终点时,使用 pandas 检索具有给定起点/终点的数据的有效方法是什么?
- javascript - 从 JavaScript 中的循环更新 DOM
- robotframework - 当响应中不存在属性时,机器人框架对 JSON 测试的响应失败
- python - 选择接口未在 Python 中返回
- xml - xslt 1.0 节点集错误,转换无效
- bash - 根据 shell 中的其他列条件替换一列的值
- pine-script - 回测 pinescript 策略时没有数据错误。在我错的地方有什么帮助吗?
- javascript - 无法将数组添加到循环中的另一个对象