Как использовать Компонент на странице - PullRequest
1 голос
/ 28 марта 2019

Я пытаюсь добавить пользовательский компонент на нескольких страницах.

  • Я создал свои страницы: ionic g pages name
  • Я создал свой компонент: ionic g component name

На данный момент я просто попробую это:

<ion-content>
    <app-menu-button></app-menu-button>
</ion-content>

кнопка приложения-меню - это селектор компонентов Я получаю эту ошибку: 1. If 'app-menu-button' is an Angular component, then verify that it is part of this module.

Я пытаюсь добавить в свой файл модуля приложения следующее:

exports: [
    MenuButtonComponent
  ]

Но это не работает.

Моя цель - отобразить этот компонент на нескольких страницах.

Спасибо

Ответы [ 3 ]

1 голос
/ 28 марта 2019

Если вы используете отложенную загрузку, вам нужно импортировать свой пользовательский компонент в модуль страницы. Например: если вы хотите использовать свой компонент AppMenuButtonComponent на странице с именем ExamplePage, вам необходимо импортировать его в модуль страницы.

import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { ExamplePage } from './example';
import { AppMenuButtonComponent } from '../../components/appmenubutton/appmenubutton';

@NgModule({
  declarations: [
    ExamplePage,
    AppMenuButtonComponent
  ],
  imports: [
    IonicPageModule.forChild(ExamplePage),

  ],
  exports: [
    ExamplePage,
  ]
})
export class ExamplePageModule {

}

Не забудьте удалить импорт и объявления из файла app.module.ts, который был автоматически добавлен при создании пользовательского компонента.

0 голосов
/ 28 марта 2019

Добавьте ваш Компонент в массив объявлений и массив Entry Components (если его загрузка изначально) declarations: [] && entryComponents: []

0 голосов
/ 28 марта 2019

Все компоненты должны быть объявлены в модулях, как показано ниже.

@NgModule({
   declarations: [
      MenuButtonComponent
   ]
})
...