【问题标题】:Angular 2 template selector not knownAngular 2 模板选择器未知
【发布时间】:2017-04-19 14:29:18
【问题描述】:

我正在尝试对页面执行简单的模板注入,但在运行时在 chrome 的控制台窗口中收到以下错误:

zone.js:388 未处理的承诺拒绝:模板解析错误: 'recruiter-detail' 不是已知元素:

  1. 如果“recruiter-detail”是一个 Angular 组件,则验证它是否是该模块的一部分。
  2. 如果“recruiter-detail”是一个 Web 组件,则将“CUSTOM_ELEMENTS_SCHEMA”添加到该组件的“@NgModule.schemas”中 压制此消息。 (“[错误 ->]"):AppComponent@0:0;区域:;任务:Promise.then;值:错误:模板解析错误:(…) 错误:模板解析错误:'recruiter-detail' 未知 元素:
  3. 如果“recruiter-detail”是一个 Angular 组件,则验证它是否是该模块的一部分。

app.component.ts

import { Component } from '@angular/core';
import { RecruiterDetailsComponent } from "./recruiter/recruiter-details.component";

@Component({
    selector: 'pm-app',
    template: `<recruiter-detail></recruiter-detail>`
})
export class AppComponent {
    pageTitle: string = 'Agent details';

recruiter-details.component.ts 这位于名为recruiter 的子文件夹中

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

@Component({
    selector: 'recruiter-detail',
    templateUrl: './app/recruiter/recruiter-details.component.html'
})
export class RecruiterDetailsComponent {
}

我正在使用 VS2015。在我的 wwwroot 文件夹下,我有一个 app 文件夹,其中 main.ts、app.component.ts 和 app.module.ts 驻留。应用程序有一个招聘人员的子文件夹。

【问题讨论】:

  • 向我们展示你的应用模块,你可能忘记在你的应用模块中声明 RecruiterDetailsComponent

标签: javascript angular


【解决方案1】:

尝试更改模板网址,例如

templateUrl: 'app/recruiter/recruiter-details.component.html'

而不是

templateUrl: './app/recruiter/recruiter-details.component.html'

【讨论】:

  • 是的,这解决了第二个问题。谢谢你。我可以发誓我已经试过了,
【解决方案2】:

如果 'recruiter-detail' 是一个 Angular 组件,则验证它是该模块的一部分

您是否在 module.ts 的声明部分中添加了招聘人员详细信息组件

错误还说承诺拒绝。

再看一遍你的代码,模板可能有错误。

尝试将您的组件添加到 module.ts 中的声明中 如果它不起作用 看看你是如何处理承诺的,还要看看模板是否有错误或拼写错误

【讨论】:

  • 不,我没有。我将它声明为在 app.component.ts 的导入中,所以我认为我不需要。我现在添加它,看看会发生什么
  • 这已经消除了上述错误。我现在收到以下邮件:http://localhost:57703/recruiter/recruiter-details.component.html 404 (Not Found)
  • 你给你的recruiter-details.component‌​.html的路径错误
  • 如果它们在同一个文件夹中,请尝试 ./../recruiter/recruiter-details.component‌​.html
  • 基本上结构是wwwroot/app/recruiter。在recruiter 中有一个recruiter-details.component.html 一个recruiter-details.component.ts 文件。在 wwwroot/app 我有 app.component.ts app.module.ts 和 main.ts
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-04
  • 1970-01-01
  • 1970-01-01
  • 2017-06-15
  • 2012-09-26
  • 2018-04-26
  • 1970-01-01
相关资源
最近更新 更多