Это сводит меня с ума, надеюсь, кто-то может пролить свет на проблему.Я лениво загружаю свои компоненты Ionic, все отлично работает в разработке, однако, когда я иду на компиляцию, AOT выдает ошибку.Я потратил около 4 часов, пытаясь различными способами загрузить это, я потерян, продолжаю получать ту же ошибку.
Из того, что я прочитал и нашел в примерах, это должно быть правильно.Что мне здесь не хватает?
'tester' is not a known element: 1. If 'tester' is an Angular component, then verify that it is part of this
module. 2. To allow any element add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component. ("
<ion-list *ngIf="!id"> <ion-list-header> [ERROR -><tester></tester>
// components/tester/tester.ts
import { Component } from '@angular/core';
@Component({
selector: 'tester',
templateUrl: 'tester.html'
})
export class TesterComponent {
text: string;
constructor() {
console.log('Hello TesterComponent Component');
this.text = 'Hello World';
}
}
// components/components.module.ts
import { NgModule } from '@angular/core';
import { TesterComponent } from './tester/tester';
import {IonicModule} from "ionic-angular";
@NgModule({
declarations: [TesterComponent],
imports: [IonicModule],
exports: [TesterComponent,
]
})
export class ComponentsModule {}
// pages/faq/faq.module.ts
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { FaqPage } from './faq';
import {ComponentsModule} from "../../components/components.module";
@NgModule({
declarations: [
FaqPage
],
imports: [
IonicPageModule.forChild(FaqPage), ComponentsModule
],
})
export class FaqPageModule {}
// pages/faq/faq.html
<tester></tester>
EDIT
Благодаря @Joel Joseph - Очевидно, представление должно находиться в том же каталоге, что и ваш родительский компонент.У меня был просмотр файла .html в общем каталоге, следовательно, проблема.
templateUrl: '../shared/view/list.html'
изменен на
templateUrl: 'list.html'
, и теперь он прекрасно компилируется.Оставим это, если у кого-то еще есть эта проблема.