首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角9分量库参考文献

角9分量库参考文献
EN

Stack Overflow用户
提问于 2020-07-29 18:32:12
回答 1查看 442关注 0票数 0

我有一个组件库,它包含多个项目,将在多个应用程序中重用。在我的组件库中:

  • component-a
  • component-b
  • component-c (参考文献component-a)
  • component-d (参考文献component-acomponent-b)

)

在外部应用程序中,我有引用module-1component-d,但是在编译外部应用程序时,我会收到错误,说明component-d找不到component-acomponent-b,即使它们安装在它们旁边。

我已经深入研究了npm linknpm install和tsconfig路径映射,但我还没有找到一个允许外部应用程序编译的成功组合。

创建组件库的正确方法是什么,其中包含的组件相互引用,可以由外部应用程序使用?

注意:我已经在组件库中确保了在没有常春藤的情况下构建组件,并且我映射到相邻组件的路径使用的是dist/ component -d编译代码.

注意:我会包括从我的package.json tsconfig.ts/tsconfig.lib.ts 和文件中复制的条目,但是我在可以共享未经编辑的内容方面是有限的。如果您需要更多的信息来帮助我移动,我将看看是否可以使其足够通用,以符合公司政策。

提前谢谢,我现在很沮丧。我很感激你的指导。

编辑:我已经建立了一个通用的,缩小我的结构的例子:https://github.com/xamlzealot/angular-ivy-guq4na。这似乎没有多大帮助,但我也将其与StackBlitz:https://stackblitz.com/edit/angular-ivy-guq4na连接起来。

主要的优点是shared-components库需要引用design-systemAwesomeApp需要同时引用design-systemshared-components。NGC似乎不喜欢库引用库,我希望我在这里遗漏了一些东西,或者可能有一个解决办法。

EN

回答 1

Stack Overflow用户

发布于 2020-07-30 16:36:22

感谢您提供了存储库和stackblitz,在查看您的配置之后,您在主tsconfig.json中的库路径似乎没有正确的配置,这就是为什么您的导入没有被识别的原因。

在您的./tsconfig.json中,替换以下内容:

代码语言:javascript
复制
    "paths": {
      "shared-components": [
        "dist/shared-components/shared-components",
        "dist/shared-components"
      ],
      "design-system": [
        "dist/design-system/design-system",
        "dist/design-system"
      ]
    }

通过这一点:

代码语言:javascript
复制
    "paths": {
      "shared-components": [
        "projects/shared-components/src/public-api.ts"
      ],
      "design-system": [
        "projects/design-system/src/public-api.ts"
      ]
    }

请允许我建议,将来如果您的库和应用程序采用monorepo的路线来使用Nx https://nx.dev/angular,那么它是一个非常有用的工具,可以在同一个地方管理您的所有库和应用程序,从而使您能够访问功能强大的CLI,这将减轻此类问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63160243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档