代码之家  ›  专栏  ›  技术社区  ›  TimTheEnchanter

找不到ngmodule。使用skip import选项跳过ngmodule中的导入

  •  19
  • TimTheEnchanter  · 技术社区  · 6 年前

    当我使用cli创建新组件时,我在本文的主题中看到错误: ng g c my-component --project=my-project (未创建组件)

    我看到过其他帖子也有同样的错误信息,但是没有一个帖子也包括nrwl/nx,我相信这其中一定有牵连。项目以NG4开始,升级到NG6。

    有什么办法可以解决这个问题吗?

    谢谢。

    TTE公司

    环境:

    • 角cli:6.0.8
    • 节点:8.9.4
    • 操作系统:win32 x64
    • 角度:6.0.6
    • @角型devkit/建筑师0.6.8
    • @角度devkit/build angular 0.6.8
    • @角度devkit/构建优化器0.6.8
    • @角型devkit/芯0.6.8
    • @角度devkit/示意图0.6.8
    • @角度/CDK 6.3.1
    • @角度/CLI6.0.8
    • @角度/材料6.3.1
    • @ngtools/网页包6.0.8
    • @示意图/角度0.6.1
    • @示意图/更新0.6.8
    • RXJS 6.2.1版
    • 打字本2.7.2
    • 网页包4.8.3
    • NRWL/NX 6.1.0标准

    更新1

    我试着放下 --project 完全标记(所以 ng g c my-component )但还是有同样的问题。还不知道这意味着什么。

    5 回复  |  直到 6 年前
        1
  •  57
  •   Debojyoti    6 年前

    快速修复

    (一) 改变 现在的 目录 在命令/终端中 SRC/应用

    cd src/app (Linux系统)

    cd .\src\app\ (窗口)

    2个) 跑步 现在命令

    ng g c myComponent

        2
  •  10
  •   bvdb    5 年前

    组件的生成旨在做两件事:

    • 创造 源代码 对于组件
    • 将组件注册到 模块 (默认情况下,在 app.module.ts )

    问题是,你没有 应用模块.ts 是的。你把它改名为其他东西,甚至可能有多个。在这种情况下,有两种可能的解决方案:

    1. 您可以手动注册组件。 (最简单)

      天然气组分 --跳过导入

    2. 您可以使用 -m 切换。 (可能坏了) 这里有一条很长的线索: https://github.com/nrwl/nx/issues/526

        3
  •  1
  •   TimTheEnchanter    6 年前

    我最后完全删除了 node_modules ,清除纱线缓存,然后运行 yarn 重新安装所有软件包。我还编辑了 angular.json 所有应用程序和库的路径如下所示:

    "root": "libs/my-lib",
    "sourceRoot": "libs/my-lib/src"
    

    我不确定是哪一个解决了这个问题,但现在看来一切都好了。至少眼前的问题消失了。

    希望这能帮助别人。

    TTE公司

        4
  •  1
  •   carkod    6 年前

    我有同样的问题,在angular.json文件中,我搜索了my-project-e2e(用项目名替换我的项目) 然后我改变了:

    "root": "" "root": "e2e" 并保存了它。一切都恢复了。

    解决方案是在 link 是的。

        5
  •  1
  •   Léa Gris    5 年前
    1. 第一条路 :
      我认为首先你必须进入你的应用文件夹,然后键入命令;
      ng g c your_com_name --spec false
      ng g c your_com_name
      它肯定会创建您的组件或解决您的问题。

    2. 第二条路 以下内容:
      将E2E从 angular.json->projects 以下内容:
      一定地

      { 
          your_project_name-e2e:{}
      }
      

      例子: my-first-app-e2e

      {
            "root": "e2e/",
            "projectType": "application",
            "architect": {
              "e2e": {
                "builder": "@angular-devkit/build-angular:protractor",
                "options": {
                  "protractorConfig": "e2e/protractor.conf.js",
                  "devServerTarget": "my-first-app:serve"
                }
              },
              "lint": {
                "builder": "@angular-devkit/build-angular:tslint",
                "options": {
                  "tsConfig": "e2e/tsconfig.e2e.json",
                  "exclude": [
                    "**/node_modules/**"
                  ]
                }
              }
            }
          }
      
        6
  •  0
  •   Aleksei Protopopov    6 年前

    有同样的问题。结果与根组件的名称有某种关系。重命名回“app”解决了此问题

        7
  •  0
  •   ZF007 anurag    5 年前

    我把线移走了 "cli": { "defaultCollection": "@nativescript/schematics" } 从angular.json文件,它对我有效。

        8
  •  0
  •   user9480735user9480735    5 年前

    这也发生在我身上,在我的案例中,是因为我在app文件夹外生成了一个新组件,我在app文件夹内购买了新组件,问题就解决了。

        9
  •  0
  •   Muzaffar Mahmood    5 年前

    从app.module.ts文件所在的位置运行组件生成命令(ng g c component name)。