1

我有两个库,一个发出请求,另一个进行日志记录。这两个库都需要来自客户端的配置,客户端将始终使用它们。

请求库始终调用日志库,并将其列为对等依赖项。

日志库有一个函数调用请求库中的方法来输出日志。该方法没有日志调用以避免无限循环。日志库也将请求库列为对等依赖项。

当我尝试tsc在请求库中运行时,它抱怨它无法自行导入。导入日志库时,日志库尝试导入请求库,但找不到。显然我不想发布请求库的每个版本,其中嵌套了之前的版本,所以安装旧版本是行不通的。

我尝试使用 typescript's 在日志库中动态加载请求库await import(),但显然仍试图打开导致错误的请求库。

实现这种双向库关系的最佳方法是什么?

4

1 回答 1

1

打字稿中的双向对等依赖关系?

你没有。不在 JavaScript 中,不在 TypeScript 中。循环依赖并不好。

使固定

在第三个库中隔离循环。

前:

A -> <- B 

后:

A -> Common
B -> Common 

如果你想不到Common,那么A & B真的应该是 1(而不是 2)

于 2019-06-13T00:46:13.390 回答