复制的Angular 7项目无法编译

时间:2019-02-21 15:42:33

标签: angular npm angular7

我已经从头开始创建了一个angular 7项目,我想保存到某个点(我还没有进入git这样的版本系统),所以我手动复制了整个项目文件夹,然后尝试使用 ng服务,这给了我以下错误:

  

“ src / app / app.module.ts(7,34)中的错误:错误TS2307:找不到   模块'./main-nav/main-nav.component'。”

Angular 7编译错误:

我完全不知道这种情况如何发生以及为什么发生...。 如何在复制/粘贴过程中手动编译精巧的“松散”文件的项目的手动复制------>毫无意义 当我像往常一样用ng服务启动原始项目时,一切正常。 所以任何人都可以给我提示我如何保存适当可复制的 该项目在任何地方?

Edit1 :手动擦除node_modules文件夹并通过npm安装重新安装会产生相同的错误:

enter image description here

3 个答案:

答案 0 :(得分:0)

您可能只需要删除导入字符串中的空格。

import { MainNavComponent } from "./main-nav/main-nav.component";

或...

您可能需要一起更改路径。您的文件夹结构是什么样的?

答案 1 :(得分:0)

由于所有模块,完整的项目文件夹必须很大。这样处理不是一个好主意。

Angular项目从一开始就适合git。它带有gitignore来跳过所有未直接连接到代码的文件。所以看看吧。

如果我复制完整的文件夹,则可以毫无问题地重建它。也许您只是保存了src而不是模块的大文件夹。

尝试

npm install

重新生成它。

EDIT (刚看到您的照片)。不要认为它缺少模块。

答案 2 :(得分:0)

只有一种解决方法,我仍然不知道为什么会发生错误,但是可以执行以下操作:

-在 app.module.ts app.component.html

中手动删除主要导航组件

-然后使用 ng重新安装导航栏,生成@ angular / material:material-nav --name = main 2 -nav

-注意不同的命名参数!重新安装具有不同名称的组件时,Angular编译器不会抱怨!

当然,您还必须手动将样式等重新应用于组件...