【问题标题】:When using "ng generate library" what is an Angular "Library"?使用“ng generate library”时,什么是 Angular“Library”?
【发布时间】:2019-02-15 12:20:11
【问题描述】:

Angular CLI 有一个命令

ng generate library

“图书馆”在这种情况下指的是什么。 official docs on the ng generate library command 没有过多地说明“图书馆”是什么,或者我在哪里可以找到关于它的信息,而且这个词非常模糊,很难通过 Google 找到信息。


我标记了这个angular 而不仅仅是angular-cli,因为这个术语显然是一个正确的术语,我在official docs 中没有看到解释。我知道图书馆是什么。我不知道 “Angular 库” 是什么。

【问题讨论】:

    标签: angular angular6 angular-cli


    【解决方案1】:

    Angular 库是您创建的一种功能,可以在其他 Angular 应用程序中重复使用:即您开发了一个 Markdown 所见即所得编辑器并希望共享它,因此您捆绑了所有组件、指令、服务、管道等。到可以在 NPM 注册表中发布的库中。

    【讨论】:

      【解决方案2】:

      本文中的"angular library" 是指独立存在于projects/ 目录中的Angular 项目,

      一个Angular Library总结为,

      许多应用程序需要解决相同的一般问题,例如呈现统一的用户界面、呈现数据和允许数据输入。开发人员可以为特定领域创建通用解决方案,以便在不同应用程序中重复使用。这样的解决方案可以构建为 Angular 库,这些库可以作为 npm 包发布和共享。

      这里可以看到生成的文件,

      CREATE projects/foobar/README.md (987 bytes)
      CREATE projects/foobar/karma.conf.js (975 bytes)
      CREATE projects/foobar/ng-package.json (155 bytes)
      CREATE projects/foobar/package.json (136 bytes)
      CREATE projects/foobar/tsconfig.lib.json (726 bytes)
      CREATE projects/foobar/tsconfig.spec.json (246 bytes)
      CREATE projects/foobar/tslint.json (247 bytes)
      CREATE projects/foobar/src/public_api.ts (155 bytes)
      CREATE projects/foobar/src/test.ts (700 bytes)
      CREATE projects/foobar/src/lib/foobar.module.ts (224 bytes)
      CREATE projects/foobar/src/lib/foobar.component.spec.ts (628 bytes)
      CREATE projects/foobar/src/lib/foobar.component.ts (256 bytes)
      CREATE projects/foobar/src/lib/foobar.service.spec.ts (333 bytes)
      CREATE projects/foobar/src/lib/foobar.service.ts (135 bytes)
      UPDATE angular.json (4855 bytes)
      UPDATE package.json (1432 bytes)
      UPDATE tsconfig.json (557 bytes)
      

      这是作为您自己项目的要求添加的。这个想法是允许您打包组件以供重用,该命令只需在Angular Package Format 中设置一个组件。命令ng generate library seems to be introduced in the CLI version 6.

      请注意,它与文档中的新项目并不完全相同

      Angular 库是一个 Angular 项目,它与应用程序的不同之处在于它不能单独运行。必须在应用程序中导入和使用库。

      另见

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-08-15
        • 1970-01-01
        • 1970-01-01
        • 2023-01-06
        • 2018-10-19
        • 2019-08-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多