【发布时间】:2019-07-18 13:27:47
【问题描述】:
您好,我的角度能力对于我想要实现的目标来说并不是那么好。
我有一个export function,它从数据库中获取数据:
export async function BoardData(httpClient: HttpClient) {
...
return result;
}
你会如何依赖注入 HttpClient 呢?
我不想使用Injector,因为这需要我将我的http请求包装到setTimeout()中,这在内部和Observable.subscribe()中效果不佳。
我已经阅读了有关模块提供程序的信息,尤其是有关 useFactory 参数的信息,但我无法使其工作。请帮忙。
附注Stack 上几乎没有类似的问题,但它们都没有以应有的质量解决问题。
然后从 export const 内部调用此函数,如下所示:
export const initialState: BoardState = {
board: BoardData(http),
draggingBoard: null,
cardInFlight: null,
listInFlight: null,
nextId: 1000,
spilledCard: false,
isCopying: false,
shouldCopy: false
};
【问题讨论】:
-
您在哪里使用该功能?如果您在通过角度解析的任何形式的类实例(例如组件或服务)中使用它,您可以简单地将 HttpClient 注入该对象,然后将其传递给函数
-
它在类中不起作用,它在 Skyhook 的看板拖放的 Store reducer 中使用。换句话说,它是从 export const 内部调用的
标签: angular typescript dependency-injection