複数ページのコンポーネントを使用するIonic4

etoorgedmot

クリーンなionic4プロジェクト(ionic start --type=angularおよびテンプレートブランクを使用から始めて、複数のページで使用できるカスタム角度コンポーネントを作成しようとしています。

ただし、homepage.htmlでionic generate component生成されたコンポーネントテストを挿入して使用しようとする<app-test></app-test>、次のエラーが発生します。

core.js:1673 ERROR Error: Uncaught (in promise): Error: Template parse errors:

'app-test'は既知の要素ではありません:1。'app-test 'がAngularコンポーネントの場合、それがこのモジュールの一部であることを確認します。2.「app-test」がWebコンポーネントの場合、このメッセージを抑制するために、このコンポーネントの「@ NgModule.schemas」に「CUSTOM_ELEMENTS_SCHEMA」を追加します。( "=" _ blank "rel =" noopener "href =" https://ionicframework.com/docs ">ドキュメントがガイドになります。

エラーエラー:キャッチされていません(約束されています):エラー:テンプレート解析エラー:「app-test」は既知の要素ではありません:1。「app-test」がAngularコンポーネントの場合は、それがこのモジュールの一部であることを確認してください。2.「app-test」がWebコンポーネントの場合、このメッセージを抑制するために、このコンポーネントの「@ NgModule.schemas」に「CUSTOM_ELEMENTS_SCHEMA」を追加します。( "=" _ blank "rel =" noopener "href =" https://ionicframework.com/docs ">ドキュメントがガイドになります。

これが私のファイルがどのように見えるかです:app.module.ts

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';

import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';

import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';
import { TestComponent } from './test/test.component';

@NgModule({
  declarations: [AppComponent, TestComponent],
  entryComponents: [],
  imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],
  providers: [
    StatusBar,
    SplashScreen,
    { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
  ],
  bootstrap: [AppComponent]
})
export class AppModule {}

app-routing.module.ts

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';

const routes: Routes = [
  { path: '', redirectTo: 'home', pathMatch: 'full' },
  { path: 'home', loadChildren: './home/home.module#HomePageModule' },
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule]
})
export class AppRoutingModule { }

test.component.ts

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

@Component({
  selector: 'app-test',
  templateUrl: './test.component.html',
  styleUrls: ['./test.component.scss']
})
export class TestComponent implements OnInit {

  constructor() { }

  ngOnInit() {
  }

}

home.page.ts

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

@Component({
  selector: 'app-home',
  templateUrl: 'home.page.html',
  styleUrls: ['home.page.scss'],
})
export class HomePage {

}

home.module.ts

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { IonicModule } from '@ionic/angular';
import { FormsModule } from '@angular/forms';
import { RouterModule } from '@angular/router';

import { HomePage } from './home.page';

@NgModule({
  imports: [
    CommonModule,
    FormsModule,
    IonicModule,
    RouterModule.forChild([
      {
        path: '',
        component: HomePage
      }
    ])
  ],
  declarations: [HomePage]
})
export class HomePageModule {}

home.page.html

<ion-header>
  <ion-toolbar>
    <ion-title>
      Ionic Blank
    </ion-title>
  </ion-toolbar>
</ion-header>

<ion-content padding>
  The world is your oyster.
  <p>If you get lost, the <a target="_blank" rel="noopener" href="https://ionicframework.com/docs">docs</a> will be your guide.</p>

  <app-test></app-test>
</ion-content>

そして画像としてのフォルダ構造

私はこれまでにいくつかのことを試しましたが、1つの回避策は、src / app / shared.module.tsファイルを作成し、そこでTestComponentを宣言してエクスポートし、コンポーネントを使用するすべてのページにSharedModuleをインポートすることです。

しかし、この回避策は理想的ではないと感じており、それをよりクリーンにする方法に欠けていることがあります。何か案は?

ゲイリー・グロスガルテン

共有モジュールの回避策は、実際にはAngularでの優れたプラクティスであり、これに固執する必要があります。

参考:https//angular.io/guide/sharing-ngmodules

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

エラー:StencilJSでIonic4コンポーネントのクローンを作成するときに「モジュールが見つかりません」

分類Dev

Vue jsで複数のページ(コンポーネント)を動的に使用する

分類Dev

Ionic4ポップオーバーをそのコンポーネントから削除します

分類Dev

Angular4の複数のモジュールにコンポーネントをインポートする

分類Dev

Ionic4-すべてのページで同じポップオーバーコンポーネントを使用する

分類Dev

複数のコンポーネントでHTMLを使用する

分類Dev

Ionic2-ページコンポーネントのcssファイルをインポートする方法

分類Dev

複数のコンポーネントを使用する場合の角度トランスクルージョン

分類Dev

Reactのページで同じコンポーネントを複数回使用すると、小道具が混在する

分類Dev

HTMLページに複数のSvelteコンポーネントを含めることはできますか?

分類Dev

カスタムコンポーネントIONIC4

分類Dev

ページでコンポーネントを使用する方法

分類Dev

ページでコンポーネントを使用する方法

分類Dev

Ionic-別のページまたはコンポーネントからコンポーネントの変数を更新します

分類Dev

Ionic 3:複数のページに1つのヘッダーコンポーネント

分類Dev

ionic4を使用してアラートコントローラーの背景色を変更する方法

分類Dev

モジュールを介して複数のAngularコンポーネントをインポートする

分類Dev

ionicのコンポーネントとページ間でデータを共有する

分類Dev

既存のWebページへのReactを含める-複数のreactコンポーネント

分類Dev

Vueを使用して、複数の親コンポーネントでページ付けコンポーネントを使用するための最良の方法は何ですか?

分類Dev

ngserveを使用して実行するときにAngular6プロジェクトでionic4コンポーネントを使用するにはどうすればよいですか

分類Dev

ionic2のコンポーネントからページを表示する方法

分類Dev

複数の子コンポーネントでreact-joyrideを使用する

分類Dev

複数のコンポーネントを使用する再利用可能なHOC

分類Dev

ReactJs-コンポーネントで複数の子を使用する方法

分類Dev

NativeGeocoderReverseResultがionic4 +コンデンサのインポート中にエラーが発生する

分類Dev

同じページで複数のReactコンポーネントを切り替える方法

分類Dev

React NativeExpoアプリ-同じページに複数のコンポーネントをエクスポートする方法

分類Dev

Ionic4:1行に複数のコントロール(入力とチェックボックス)があるアイテムを一覧表示します

Related 関連記事

  1. 1

    エラー:StencilJSでIonic4コンポーネントのクローンを作成するときに「モジュールが見つかりません」

  2. 2

    Vue jsで複数のページ(コンポーネント)を動的に使用する

  3. 3

    Ionic4ポップオーバーをそのコンポーネントから削除します

  4. 4

    Angular4の複数のモジュールにコンポーネントをインポートする

  5. 5

    Ionic4-すべてのページで同じポップオーバーコンポーネントを使用する

  6. 6

    複数のコンポーネントでHTMLを使用する

  7. 7

    Ionic2-ページコンポーネントのcssファイルをインポートする方法

  8. 8

    複数のコンポーネントを使用する場合の角度トランスクルージョン

  9. 9

    Reactのページで同じコンポーネントを複数回使用すると、小道具が混在する

  10. 10

    HTMLページに複数のSvelteコンポーネントを含めることはできますか?

  11. 11

    カスタムコンポーネントIONIC4

  12. 12

    ページでコンポーネントを使用する方法

  13. 13

    ページでコンポーネントを使用する方法

  14. 14

    Ionic-別のページまたはコンポーネントからコンポーネントの変数を更新します

  15. 15

    Ionic 3:複数のページに1つのヘッダーコンポーネント

  16. 16

    ionic4を使用してアラートコントローラーの背景色を変更する方法

  17. 17

    モジュールを介して複数のAngularコンポーネントをインポートする

  18. 18

    ionicのコンポーネントとページ間でデータを共有する

  19. 19

    既存のWebページへのReactを含める-複数のreactコンポーネント

  20. 20

    Vueを使用して、複数の親コンポーネントでページ付けコンポーネントを使用するための最良の方法は何ですか?

  21. 21

    ngserveを使用して実行するときにAngular6プロジェクトでionic4コンポーネントを使用するにはどうすればよいですか

  22. 22

    ionic2のコンポーネントからページを表示する方法

  23. 23

    複数の子コンポーネントでreact-joyrideを使用する

  24. 24

    複数のコンポーネントを使用する再利用可能なHOC

  25. 25

    ReactJs-コンポーネントで複数の子を使用する方法

  26. 26

    NativeGeocoderReverseResultがionic4 +コンデンサのインポート中にエラーが発生する

  27. 27

    同じページで複数のReactコンポーネントを切り替える方法

  28. 28

    React NativeExpoアプリ-同じページに複数のコンポーネントをエクスポートする方法

  29. 29

    Ionic4:1行に複数のコントロール(入力とチェックボックス)があるアイテムを一覧表示します

ホットタグ

アーカイブ