Ioni c 5 - нг для непереносимых компонентов - PullRequest
0 голосов
/ 21 марта 2020

Я схожу с ума, я создал новый компонент, и он работает нормально. Теперь я хотел бы использовать это на двух страницах.

Затем я создал компонентный модуль (/components/all-components.module.ts) так:

import { NgModule } from '@angular/core';
import { TagsComponent } from './tags/tags.component';
import { IonicModule } from '@ionic/angular';


@NgModule({
  imports: [IonicModule],
  declarations: [
    TagsComponent
  ],
  exports: [
    TagsComponent
  ]
})

export class AllComponentsModule {}

I Я добавил в app.module.ts модуль AllComponentsModule, и в мой модуль на 2 страницы я добавил то же самое.

Теперь мой компонент работает нормально, когда я отображаю текст или переменную, мой console.log возвращает данные , но если я использую *ngFor ничего не появляется.

Наконец, вот мой компонент

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

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

  @Input() userTags: any;

  constructor() {
  }

  ngOnInit() {
      console.log(this.userTags);
  }
}

И представление:

<p>hi</p>
<div *ngFor="let tag of userTags">
  <p>{{tag?.name}}</p>
</div>

screen

1 Ответ

0 голосов
/ 22 марта 2020

Хорошо, я не понимаю, почему, но если я использую модуль для хранения всех компонентов. На моем all-components.module.ts я должен поставить CommonModule для интерпретации *ngFor, *ngIf, и т. Д. c.

С импортом CommonModule все работает нормально!

Вот код обновлено:

import { NgModule } from '@angular/core';
import { TagsComponent } from './tags/tags.component';
import { CommonModule } from "@angular/common";

@NgModule({
  imports: [CommonModule],
  declarations: [
    TagsComponent
  ],
  exports: [
    TagsComponent
  ]
})

export class AllComponentsModule {}
...