angular 即使库可用,构建编译错误

angular build compilation error even library is available

我在构建应用程序时遇到编译失败的问题。

node_modules/@mycomp/lib-my-pat/shared/store/selectors/filter.selector.d.ts:5:75 - error TS2304: Cannot find name 'Interval'.

const getDateInterval: import("@ngrx/store").MemoizedSelector<object, Interval, import("@ngrx/store").DefaultProjectorFn<Interval>>;

它说 Cannot find name 'Interval'. 即使它可用。但它来自不同的库,其他库也使用此间隔,并且它在应用程序中运行良好。这个库只会通过这样说来抛出编译问题。 如果我 link 这个有问题的库到本地应用程序并且 运行,它工作没有问题。

此间隔来自 date-fns 库。它已作为对等依赖项添加到库和应用程序的依赖项中。还有一些其他库也在应用程序中使用相同的间隔,并且工作正常。我该如何解决这个问题?

在尝试了一些解决方法后,我得到了这个问题的解决方案。

它是由于 date-fns 而发生的。它没有在应用程序内部使用,但已在库中使用。

在侧库中,没有全局解析该 Interval 的导入。间隔已由库内的其他模块解决。因此在库中添加导入语句来解决该问题。然后在全局应用可见。

import { Interval } from 'date-fns';