Angular/CLI 6.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运

在Angular 6.0之前,我已经创建了一些示意图。当我试图在托管应用程序(Angular 6)上生成一些代码时,我在Angular 5.x中执行的相同步骤现在总是导致错误
在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