gpt4 book ai didi

angular - 类不是 Angular 模块 - 仅在 IntelliJ/Webstorm 中导入本地构建 Angular 库时

转载 作者:行者123 更新时间:2023-12-05 08:22:48 25 4
gpt4 key购买 nike

我正在尝试使用在单独的 Angular 应用程序中存在的库(项目)中实现的 Angular 模块。在 IntelliJ 中,我得到一个错误 Class MyModule is not an Angular module 并且在我可以为这个项目成功运行 ng build 时,所有库似乎都无法在 IntelliJ 中识别。更奇怪的是,我实际上在另一个 Angular 应用程序中存在两个 Angular 库,我可以毫无问题地使用另一个库中的模块。

我已经访问过其他与class is not an Angular module相关的类似问题,但它们似乎并不相关。

最佳答案

这是我思考几个小时后找到的答案。我如何在主项目中使用有问题的库是:

  • npm link 在 lib 的 build 文件夹中
  • npm link @my-org/my-new-lib 在应用程序中我发现了问题。

与库一起使用 ng build @my-org/my-new-lib --watch 这让我可以同时处理这两个项目,在目标应用程序中立即看到结果。

这个问题显然是由于 IntelliJ 中的错误 - https://youtrack.jetbrains.com/issue/WEB-38354?_ga=2.263408847.258701770.1571260138-1443411092.1565629801 - 即使库正确链接到目标应用程序的 node_modules IntelliJ 排除了它,因此库在路径中,这导致路径中的依赖关系被自动排除事实上在 IDE 中不可用。

解决方法(类似于 jetbrains 票中建议的方法)是在目标应用程序的 IDE 中转到符号链接(symbolic link)的 node_modules/@my-org/my-new-lib - 对单击它并选择将目录标记为 -> 未排除

希望这可以为某人节省一些时间,因为它确实令人困惑且难以克服。

关于angular - 类不是 Angular 模块 - 仅在 IntelliJ/Webstorm 中导入本地构建 Angular 库时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58437137/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com