【问题标题】:NX Angular multiple libs with the same nameNX Angular 多个同名库
【发布时间】:2021-11-24 21:57:33
【问题描述】:

所以我将 Angular 与 NX 一起使用,我有以下组 bookscars。对于这两个组,我想创建一个带有表格的 overview 库以查看书籍或汽车。

所以我在libs/books/overview 下创建了库,接下来我想为汽车libs/cars/overview 做同样的事情。但是后来我遇到了这个问题:

Error: Project name already exists.

我是否需要将库命名为 books-overview?然后我将创建以下库:libs/books/books-overviewbooks 是多余的,所以它似乎不是最好的选择。

【问题讨论】:

    标签: angular typescript nrwl-nx nrwl


    【解决方案1】:

    文件夹名称不必与应用相同。相反,您可以为库名称的每个破折号分隔部分创建父文件夹。

    您可以在文件夹books/overview 中创建名称为'books-overview' 的库。


    以文件夹结构为名称运行命令,它正确地决定了名称。跑步

    npx ng generate @nrwl/workspace:library --name=books/overview
    

    将在文件夹books/overview 中生成库'books-overview'


    例如这是我们应用程序的配置(我们也使用 nx):

    // angular.json excerpt
    "api-java-model": {
      "projectType": "library",
      "root": "libs/api/java/model",
    ...
    },
    "api-java-client": {
      "projectType": "library",
      "root": "libs/api/java/client",
    ...
    

    这样你就不会发生文件夹冲突。

    【讨论】:

      【解决方案2】:

      我认为这里最好的选择是创建一个文件夹overviews,其中包含库。例如:

      libs/overviews/cars

      libs/overviews/books

      【讨论】:

      • 谢谢,但我认为这不是一个好的解决方案。按域对库进行分组提供了一个干净的架构。但是有了这个解决方案,你就有了一个特殊的模式,它打破了干净的结构
      猜你喜欢
      • 2020-07-07
      • 2020-06-12
      • 2019-07-20
      • 2019-05-21
      • 2021-05-22
      • 2020-02-13
      • 1970-01-01
      • 2018-08-14
      • 2020-08-29
      相关资源
      最近更新 更多