Angular/CLI 6.x版本中的自定义原理图没有错误,但我无法使用它生成文件
在Angular 6.0之前,我已经创建了一些示意图。当我试图在托管应用程序(Angular 6)上生成一些代码时,我在Angular 5.x中执行的相同步骤现在总是导致错误Angular/CLI 6.x版本中的自定义原理图没有错误,但我无法使用它生成文件,angular,angular-schematics,Angular,Angular Schematics,在Angular 6.0之前,我已经创建了一些示意图。当我试图在托管应用程序(Angular 6)上生成一些代码时,我在Angular 5.x中执行的相同步骤现在总是导致错误在collection@schematics/Angular中找不到原理图“我的原理图” 我的设置(全局角度设置): 我的步骤: Ran原理图原理图--name=my first schematics。因此,它创建了一个新的schematics项目,其中包含三个示例模式。然后我导航到新文件夹cd我的第一张示意图 运行npm运
在collection@schematics/Angular中找不到原理图“我的原理图”
我的设置(全局角度设置):
我的步骤:
Ran原理图原理图--name=my first schematics
。因此,它创建了一个新的schematics项目,其中包含三个示例模式。然后我导航到新文件夹cd我的第一张示意图
运行npm运行构建
。它构建时没有错误
Ran示意图:我的第一张示意图
。结果:错误“我的第一张示意图“未在集合中找到”。
我在一些博客中看到,他们执行此步骤时没有出现问题。我从来没有运行过这个命令,我也不确定它实际上是做什么的,所以我将继续假设这个命令毕竟是不必要的
运行npm链接
,以便我可以在新项目中使用此新的schematics集合
在另一个提示窗口中,我创建了一个新的应用程序:ng new schematics consumer
,然后在npm安装后,cd schematics consumer
运行npm链接我的第一个原理图
,因此我现在可以访问该原理图库
我导航到src/app
,因为我想在那里生成文件
运行ng g my schematic-c my first schematics
。导致错误在集合“@schematics/angular”
中找不到原理图“我的原理图”。我指定了一个集合。为什么它没有看到我的新系列,它仍然认为每个原理图都在@schematics/angular
所以,我不能用原理图生成任何东西。我没有修改由schematics schematic name=my first schematics
生成的默认代码中的任何内容
是否有一套新的命令、程序等来创建我们自己的自定义示意图?我错过了什么步骤?我还需要安装什么?如有必要,我会提供更多信息
目前,没有关于原理图的新指南或博客,因为6.0只有几周的历史,所以我认为旧方法应该仍然有效。问题似乎最终在于angular cli
,请参阅讨论:
要解决此问题,可以将默认集合设置为自定义原理图:
ng config cli.defaultCollection my-first-schematics
现在您应该能够运行ng g my schematic
如果这不起作用,您可以发布实际起作用的my first schematics
目录的文件列表吗?。非常感谢。在angular.json
中插入了{“cli”:“defaultCollection”:“我的第一个原理图”}
,所以我猜这不是一个全局设置,而是每个工作区。
ng config cli.defaultCollection my-first-schematics