2017-02-12 4 views
1

Я использую этот пример GitHub (https://github.com/bradtraversy/mean_mytasklist), и он отлично работает до сих пор. Я вижу задачи моего MongoDB, могу добавить, удалить задачи.Angular 2 - MEAN MongoDB NodeJS

Тогда я пытался добавить новый компонент «заголовок»

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

@Component({ 
    moduleId: module.id, 
    selector: 'headers', 
    templateUrl: 'header.component.html' 
}) 
export class HeaderComponent { 

} 

Я добавил этот компонент в моем app.modules.ts

import { NgModule } from '@angular/core'; 
import { BrowserModule } from '@angular/platform-browser'; 
import { HttpModule } from '@angular/http'; 
import { FormsModule } from '@angular/forms'; 
import { AppComponent } from './app.component'; 
import { TasksComponent } from './components/tasks/tasks.component'; 
import { HeaderComponent } from './components/header/header.component'; 

@NgModule({ 
    imports: [BrowserModule, HttpModule, FormsModule], 
    declarations: [AppComponent, TasksComponent, HeaderComponent], 
    bootstrap: [AppComponent] 
}) 
export class AppModule { } 

В моем app.component.html я нахожусь используя этот селектор.

<div class="container"> 
    <headers></headers> 
    <h1>MyTaskList</h1> 
    <hr> 
    <tasks></tasks> 
</div> 

После обновления моего браузера, я получаю сообщение об ошибке:

zone.js: 420 Неизвестного Promise отказа: Шаблон ошибка синтаксического анализа: «заголовки» не известный элемент: 1. Если «headers» - это угловой компонент, а затем проверьте, что он является частью этого модуля. 2. Если «headers» - это веб-компонент, добавьте «CUSTOM_ELEMENTS_SCHEMA» в «@ NgModule.schemas» этого компонента, чтобы подавить это сообщение. ("? [ERROR ->]

<headers></headers> 
<h1>MyTaskList</h1> 
<hr> 

Любые идеи Большое спасибо !!!

"): AppComponent @ 1: 4; Зона:; Задача: Promise.then;

ответ

0

Какая версия углового 2 вы используете & Вы не используете webpack для сборки?

Решение упомянуто в самой консоли ошибок. Вам нужно добавить

schemas: [CUSTOM_ELEMENTS_SCHEMA ] 

Так что ваш app.module.ts должен выглядеть примерно так,

import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; 

@NgModule({ 
    imports: [BrowserModule, HttpModule, FormsModule], 
    declarations: [AppComponent, TasksComponent, HeaderComponent], 
    bootstrap: [AppComponent], 
    schemas: [CUSTOM_ELEMENTS_SCHEMA ] 
}) 
+0

Спасибо за ответ, но я все еще получаю ту же ошибку. CUSTOM_ELEMENTS_SCHEMA позволяет -> любые неагрегатные элементы с a - от их имени и -> любые свойства элементов с a - на их имени, которое является общим правилом для настраиваемых элементов (https://angular.io /docs/ts/latest/api/core/index/CUSTOM_ELEMENTS_SCHEMA-let.html). Я использую только «header» в качестве селектора. Что меня удивляет, так это то, что компонент задачи (см. Пример GitHub) работает. –

+0

Я полагаю, вы были на правильном пути. Похоже, я использую старую версию Angular. Был bugreport, который точно описывает мою проблему (https://github.com/angular/angular/issues/11426). Где я могу проверить свою версию? Как я могу обновить свой угол? СПАСИБО!!! –

+0

Попробуйте изменить свой селектор компонентов на пользовательский заголовок, если он работает для вас. !! Проверьте свой пакет.json для угловой версии. –

Смежные вопросы