2016-11-24 21 views
0

我正在將我的應用程序從beta.11升級到RC3。但是我在beta.11版本中使用的組件有問題。ionic2 //無法在頁面組件中使用我的模塊

基本上,我創建了一個模塊化組件「MyMessage」,它是一個angular2組件(而不是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,我在imports部分添加MyMessageModule。 但我仍然有以前的錯誤,我不明白我錯過了什麼。

謝謝!

回答

0

如下更改MyMessageModule

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

謝謝!我嘗試過,但我仍然有問題。我也嘗試刪除我對這個模塊的所有調用,但只保留一個模板,但我在javascript控制檯中得到這個錯誤:模塊'MyMessageModule'導入的意外指令'MyMessage' –

+0

您必須刪除'MyMessage'從'MyMessageModule'的'進口'裝飾元數據' – ranakrunal9

+0

好吧,它的工作原理。我迷失了所有這些裝飾元數據。最後一個問題:我從打字稿類中加載並填寫我的組件,但似乎我的類並未到處導出,因爲此行失敗:'messages:Array ;'('找不到名稱'MyMessage'') –

相關問題