Angular / CLI 6.x中的自定义原理图构建没有错误,但我无法使用它来生成文件

我之前在Angular 6.0之前创建了一些原理图.我在Angular 5.x中执行的相同步骤现在总是导致在我尝试在托管应用程序(Angular 6)上生成一些代码时,在@ schematics / angular集合中找不到错误原理图’my-schematic’.

我的设置(全局Angular东西):

Angular CLI: 6.0.0
Node: 8.11.1
OS: win32 x64

@angular-devkit/{architect, core, schematics} 0.6.0
@schematics/angular 0.6.0
rxjs 6.1.0
typescript 2.7.2

我的步骤:

> Ran schematics原理图–name = my-first-schematics.因此,它创建了一个新的原理图项目,其中包含三个示例模式.然后我导航到新文件夹cd my-first-schematics.
>跑npm run build.它构建没有错误.
> Ran schematics.:my-first-schematics.结果:在集合“.”中找不到错误“my-first-schematics”.我在一些博客中看到他们毫无问题地执行了这一步骤.我从来没有习惯运行这个命令,我不确定它实际上是做什么的,所以我会假设毕竟不需要这个命令.
> Ran npm链接,以便我可以在新项目中使用这个新的原理图集合.
>在另一个提示窗口中,我创建了一个新的应用程序:ng new schematics-consumer,然后在npm安装之后,cd schematics-consumer.
> Ran npm链接我的第一个原理图,所以我现在可以访问该原理图库.
>我导航到src / app,因为我想生成我的文件.
>选择我的原理图-c my-first-schematics.导致错误原理图“my-schematic”未在集合“@ schematics / angular”中找到.我指定了一个集合.为什么它没有看到我的新系列,它仍然认为每个原理图都在@ schematics / angular?

所以,我无法使用原理图生成任何内容.我没有修改由schematics原理图名称= my-first-schematics生成的默认代码中的任何内容.

是否有一组新的命令,程序等来创建我们自己的自定义原理图?我错过了哪些步骤?我还需要安装什么?如有必要,我会提供更多信息.

目前,没有关于原理图的新指南或博客,因为6.0只有几个星期的历史,所以我假设旧方法仍然可以工作.

最佳答案 似乎问题最终是使用angular-cli,请参阅讨论:
https://github.com/angular/devkit/issues/528#issuecomment-387415646

要解决此问题,您可以将默认集合设置为自定义原理图:

ng config cli.defaultCollection my-first-schematics

现在你应该可以运行ng my-schematic.

如果这不起作用,您可以发布my-first-schematics目录的文件列表吗?

点赞