Как использовать ионные компоненты внутри угловых компонентов - PullRequest
0 голосов
/ 15 октября 2018

Проблема

В ионном приложении я использую два пользовательских угловых компонента.В одном из угловых компонентов я хочу использовать два ионных компонента, <ion-icon> и <ion-fab>, но ионный генерирует две ошибки

ion-icon is not a known element

и

ion-fab is not a known element

Вопрос

Как я могу использовать ионные компоненты внутри пользовательских угловых компонентов?

Вот компонент, в котором я использую ионные компоненты

footer.html

<div class="footer-container">
  <div class="comics-option-container">
    <img class="comics-icon" src="../../assets/imgs/grid2.png" />
    <p>Comics</p>
  </div>

  <div class="search-option-container">
    <ion-fab class="search-fab-btn-container">
      <button ion-fab class="search-btn">
          <ion-icon name="ios-search" color="white"></ion-icon>
      </button>
    </ion-fab>

    <p>Search</p>
  </div>

  <div class="edit-option-container">
    <img class="posting-icon" src="../../assets/imgs/edit1.png" />
    <p>Posting</p>
  </div>
</div>

components.module.ts

import { NgModule } from '@angular/core';
import { HeaderComponent } from './header/header';
import { IonicModule } from 'ionic-angular';
import { FooterComponent } from './footer/footer';
import { CommonModule } from '@angular/common';
@NgModule({
    declarations: [HeaderComponent, FooterComponent],
    imports: [IonicModule],
    exports: [HeaderComponent, FooterComponent]
})
export class ComponentsModule {}

HeaderTestPage - страница, на которой я использую этот компонент, ниже находится его файл модуля

headertest.module.ts

import { NgModule } from '@angular/core';
import { IonicPageModule, IonicModule } from 'ionic-angular';
import { HeaderComponent } from '../../components/header/header';
import { FooterComponent } from '../../components/footer/footer';
import { SharedModule } from '../../shared.module';
import { HeaderTestPage } from './headertest';

@NgModule({
  declarations: [
    HeaderTestPage
  ],
  imports: [
    IonicPageModule.forChild(HeaderTestPage),
    SharedModule
  ],
})

export class HeaderTestPageModule {}

1 Ответ

0 голосов
/ 24 июля 2019

У меня та же проблема, что и у вас, и я нахожу способ ее решить и помочь всем, у кого такая же проблема.

Вам необходимо импортировать IonicModule и CommonModule в components.module.tsчтобы решить проблему.

@NgModule({
 imports: [
  CommonModule,
  IonicModule
 ],
 ...
})

Я нашел решение благодаря комментарию Wils в теме "Ionic 3 не может использовать ion-компоненты внутри моих пользовательских компонентов«

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...