2017-09-22 6 views
2

私はAngula2とIonicワールドではかなり新しいので、現在さまざまなページ、コンポーネント、プロバイダのタブアプリを開発しています。私はionic serveを実行するとうまく動作しますコマンド。今私はAPKを生成しようとしていると私はそのエラーを取得します。タイプLoginPageは2つのモジュールの宣言の一部です

@NgModule({declarations: [ 
    MyApp, 
    MenuPage, 
    OrdersPage, 
    DatiPage, 
    .... 
TextImg] 

も、すべてのページは、それが何か含む独自のpage.module.tsファイルのしている:私は1つを削除した場合

import { NgModule } from '@angular/core'; 
import { IonicPageModule } from 'ionic-angular'; 
import { DatiPage } from './dati'; 

@NgModule({declarations: [ 
    DatiPage, 
    ],imports: [ 
    IonicPageModule.forChild(DatiPage), 
], 
}) 
export class DatiPageModule {} 

を私app.module.tsで 私はそのような宣言を持っています2つの宣言のうち、ionic serve webappは動作を停止します。

enter image description here

申し訳ありませんが、長いパスが、それはそれだ:私はAPKを構築しようとした場合Otherwayは、私はこれを取得します。誰かが私が間違っていることを知っていますか?ありがとうございました!

+0

それは重複した質問だった。ありがとうございました** [Duannx](https://stackoverflow.com/users/4254681/duannx)**それを指摘してください。 – sebaferreras

答えて

1

すべてのページのようなものを含む独自のpage.module.tsファイルを持っている[...]

あなたは怠惰なロードされたページを使用しているように思えます。各ページが必要なときにだけ、あなたはapp.module.tsファイル

@NgModule({ 
    declarations: [ 
     MyApp, 
     // MenuPage, // <---- Remove the pages from the app module 
     // OrdersPage, 
     // DatiPage, 
     .... 
     TextImg 
    ] 
    //... 
    }) 
    export class AppModule { } 

からこれらのページを削除する必要がロードされているので、今、各ページには、(これはタイプを削除する必要がありますだけで、独自のモジュールにdeclaredする必要があります...の一部です。二つのモジュールエラー)

との宣言は、これらのページは、レイジーロードされますが、これらのページのいずれかに移動する必要がある場合、されているので、あなたはその名前とないコンポーネント名で文字列を使用する必要があります。

// When setting the page in the app.component.ts page 
rootPage:any = 'HomePage'; 

文字列なので、HomePageを任意のファイルにインポートする必要はありません。

あなたがイオンのブログからこれら二つのブログの記事で遅延ロードに関する詳細な情報を見つけることができます:私は知っている前に答えを追加しました

+0

あなたの答えはsebaferrerasありがとう、私は言ったようでしたが、それでも動作していません。私は最初の質問を見ましたが、私はどちらが重複していて何かを得ていません。 @snorkpeteは、宣言とインポートからAddEventを削除し、代わりに "AddEventModule"をインポートし、 "AddEventModule"をインポートに追加すると述べていますが、entryComponentsに宣言された "AddEvent"もあります。または、 "AddEvent"がentryComponentsになければなりませんか?私は「AddEvent」が一番上のインポートにないので、いいえと思います – user1840039

関連する問題