2016-11-24 12 views
0

Я обновляю свое приложение с бета.11 до RC3. Но у меня проблема с компонентом, который я использовал в версии beta.11.ionic2 // Нельзя использовать мой модуль в компоненте страницы

В принципе, я создал модульный компонент «MyMessage», который является компонентом angleular2 (а не NgModule). Я использую этот модуль в компоненте страницы «MessagesPage».

Вот что работал с beta.11:

@Component({ 
    selector: 'my-message', 
    templateUrl: 'my-message.component.html', 
}) 
export class MyMessage { 
    // ... 
} 

import { MyMessage } from '../components/my-message.component'; 
@Component({ 
    templateUrl: 'messages.html' // Template contains <my-message> tags 
    //, directives: [ MyMessage ] 
}) 
export class MessagesPage { 
    messages: Array<MyMessage>; 
    // ... 
} 

Но у меня есть проблемы с зависимостями:

Не можете найти имя '' MyMessage

Так что я попытался переместить мой компонент «MyMessage» в NgModule, который, казалось, был решением.

import { MyMessage } from './components/my-message.component'; 
@NgModule({ 
    imports:  [ IonicModule.forRoot(MyMessage) ], 
    declarations: [ MyMessage ] 
}) 
export class MyMessageModule { } 

И в app.module.ts, я добавил MyMessageModule в разделе imports. Но у меня все еще есть предыдущая ошибка, я не понимаю, что я пропустил.

Спасибо!

ответ

0

Изменение MyMessageModule, как показано ниже:

import { MyMessage } from './chat-message.component'; 
@NgModule({ 
    declarations: [ MyMessage ], 
    exports : [ MyMessage ] 
}) 
export class MyMessageModule { } 
+0

спасибо! Я пробовал это, но у меня все еще есть проблема. Я также попытался удалить все мои вызовы в этот модуль, но сохранить только один в шаблоне, но я получил эту ошибку в консоли javascript: Неожиданная директива MyMessage, импортированная модулем MyMessageModule –

+0

Вам нужно удалить 'MyMessage' из метаданных 'import' decorator' MyMessageModule' – ranakrunal9

+0

Хорошо работает. Я потерял все эти метаданные декоратора. Последний вопрос: я загружаю и заполняю свой компонент из классов типов, но кажется, что мой класс не экспортируется повсюду, потому что эта строка терпит неудачу: 'messages: Array ;' ('Не удается найти имя 'MyMessage'') –