Angular无法识别模板中的选择器,即使它已在组件

时间:2017-07-03 14:02:28

标签: html angular templates components

我无法理解为什么Angular不允许我引用我的组件选择器。我有一个页面,当你点击列表项时,页面应该显示另一个模板html。这是我的代码。

我一直收到的错误是'message-component'不是已知元素: 1.如果'message-component'是Angular组件,则验证它是否是此模块的一部分。 2.如果'message-component'是Web组件,则将'CUSTOM_ELEMENTS_SCHEMA'添加到此组件的'@NgModule.schemas'以禁止显示此消息。

Messages.component.html

     <div id="Case" class="w3-container city" style="display:none">
    <h2>Case</h2>
    <message-case> </message-case>
  </div>

我不明白为什么在NgModule和组件内声明和导入消息组件时它会给我这个错误。

Messages.Module.ts

@NgModule
({
    imports: [SharedModule],


    declarations: [
        MessagesComponent,
        MessageCaseComponent,

        MessagesFilterPipe,
        CreateMessageComponent,

    ],

})

最后这是我试图使用组件选择器

显示的文件
import { Component, OnInit } from '@angular/core';
import { IMessage } from './message';
import { ActivatedRoute, Router, Params } from '@angular/router';
import {MessagesComponent} from './messages.component'; 
import {CreateMessageComponent} from './createmessage.component';
@Component
({
    moduleId: module.id,
    selector: 'message-case',
    templateUrl: 'message-case.html'
})

所有帮助将不胜感激!我现在似乎处于死胡同。

1 个答案:

答案 0 :(得分:0)

Firstable名称文件错误,你把这个文件名放在描述

<强>&#34; Messages.component.html&#34;

模板的路径必须包含&#34; ./"如果它在同一文件夹中,如果它在另一个文件夹中,则必须放置相对路径文件夹/文件

@Component
({
    moduleId: module.id,
    selector: 'message-case',
    templateUrl: './Messages.component.html'
})