Angular 导入的库出现 forRoot 抛出错误
Angular imported library with forRoot throwing error
我有一个库,其中设置了静态 forRoot 方法,这要归功于我问的另一个问题:
在另一个项目中使用这个库时就会出现问题。
我已经导入了这样的模块:
imports: [
ImagesModule.forRoot({ cloudName: environment.cloudinary.name }),
],
这可以编译,但是如果我查看 chrome 我有这个错误:
有人知道为什么吗?
我修好了;我正在关注这篇文章:
https://www.usefuldev.com/post/Angular:%20Creating%20configurable%20libraries%20with%20angular%20cli
如果您注意到它确实声明了这个常量:
import { InjectionToken } from '@angular/core';
import { NormalLibConfig } from './normal-lib-config';
export const NORMAL_LIB_CONFIG = new InjectionToken(
'NORMAL_LIB_CONFIG'
);
我注意到,即使它导入 NormalLibConfig
,它也从未实际使用它。所以我用谷歌搜索 InjectionToken,发现它是一个通用的 class。所以我将我的实现更新为:
import { InjectionToken } from '@angular/core';
import { ImagesConfig } from './images-config';
export const IMAGES_CONFIG = new InjectionToken<ImagesConfig>('IMAGES_CONFIG');
这解决了问题
我有一个库,其中设置了静态 forRoot 方法,这要归功于我问的另一个问题:
imports: [
ImagesModule.forRoot({ cloudName: environment.cloudinary.name }),
],
这可以编译,但是如果我查看 chrome 我有这个错误:
有人知道为什么吗?
我修好了;我正在关注这篇文章:
https://www.usefuldev.com/post/Angular:%20Creating%20configurable%20libraries%20with%20angular%20cli
如果您注意到它确实声明了这个常量:
import { InjectionToken } from '@angular/core';
import { NormalLibConfig } from './normal-lib-config';
export const NORMAL_LIB_CONFIG = new InjectionToken(
'NORMAL_LIB_CONFIG'
);
我注意到,即使它导入 NormalLibConfig
,它也从未实际使用它。所以我用谷歌搜索 InjectionToken,发现它是一个通用的 class。所以我将我的实现更新为:
import { InjectionToken } from '@angular/core';
import { ImagesConfig } from './images-config';
export const IMAGES_CONFIG = new InjectionToken<ImagesConfig>('IMAGES_CONFIG');
这解决了问题