无法识别新的角度项目,生成新的零部件和选择器

时间:2018-07-04 13:50:54

标签: angular

在开始之前,我已经尝试了所有在线发现的可能的stackoverflow / github解决方案。他们都不工作。大多数问题涉及用户创建自定义模块,并且存在配置问题。我的不是这样的,因为这是一个全新的项目,仅生成并显示了一个组件。到目前为止,我已经进行了两次英雄巡回演出,并且效果良好。我已经创建了一个现有项目,它已经工作了几天,然后突然停止了。我还要补充一点,当我导航到该网站时,没有控制台错误,一切都成功运行。我运行ng test时只有问题。

问题

我创建了一个新的角度项目,因为我的旧项目突然遇到了一个问题,即我无法将新生成的组件的选择器用作app.component.html文件中的html标签。这是我运行ng-test时遇到的错误:

Error: Template parse errors:
'app-test' is not a known element:
1. If 'app-test' is an Angular component, then verify that it is part of this module.
2. To allow any element add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component.

步骤

我运行了ng new test-project命令来创建一个新的角度项目。我进入文件夹,然后运行ng generate component test。这样就成功创建了我的测试组件。

这是test.component.ts文件:

import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'app-test',
  templateUrl: './test.component.html',
  styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {

  constructor() { }

  ngOnInit() {
  }

}

这是app.module.ts文件:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';

@NgModule({
  declarations: [
    AppComponent,
    TestComponent
  ],
  imports: [
    BrowserModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

最后,这是我的app.component.html文件:

<app-test></app-test>

1 个答案:

答案 0 :(得分:1)

如果您未在测试床中声明此组件,则测试床将不知道此组件存在。

在测试中,像这样提供新组件

TestBed.configureTestingModule({
  declarations: [AppComponent, TestComponent],
})
  .compileComponents();