使用“ ng generate library”时,什么是Angular“ Library”?

时间:2019-02-15 12:20:12

标签: angular angular6 angular-cli

Angular CLI具有命令

ng generate library

在这种情况下,“图书馆”指的是什么。 official docs on the ng generate library command对于什么是“图书馆”或我在哪里可以找到有关信息的说法不多,而且该术语含义模糊,以至于很难在Google上找到信息。


我要标记这个angular而不只是angular-cli,因为该术语显然是一个合适的术语,在official docs中我没有看到它的解释。我知道图书馆是什么。我不知道什么是“ Angular Library”

2 个答案:

答案 0 :(得分:0)

Angular库是您创建的功能,可以在其他Angular应用程序中重用:即您开发了markdown WYSIWYG编辑器并希望共享它,因此将所有组件,指令,服务,管道等捆绑在一起。放入可以在NPM注册表中发布的库中。

答案 1 :(得分:-4)

在此情况下,"angular library"是指独立的Angular项目,它本身位于projects/目录中,

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项目,因为它不能单独运行。必须在应用程序中导入和使用库。

另请参见