Angular 2 повторное использование компонентов с общими модулями



Я пытаюсь уменьшить избыточный код в моем приложении путем объединения компонентов, используемых в нескольких модулях, в общий модуль. Я следовал за угловым столбом, https://angular.io/docs/ts/latest/guide/ngmodule.html#! # shared-module . Похоже, что я пропустил шаг, потому что приложение зависает, когда я делаю описанные изменения.



Я создал два плунжера, один без общего модуля и второй плунжер после внесения изменений. Инициал код можно найти по этой ссылке; https://plnkr.co/edit/VrEe5S54rEkKipuGLsQs?p=info



Затем я внес следующие изменения.


  1. созданный общий модуль (см. код ниже)

  2. добавлен компонент Pagenotfound в SharedModule


  3. Обновлено приложение.модуль.ts



    A. прокомментировал FormsModule



    B. прокомментировал PageNotFoundComponent



    C. Импортированный SharedModule




  4. Обновлена маршрутизация приложений.модуль.ts



    А. Прокомментировал PageNotFoundComponent




Обратите внимание, что я пытался сохранить его простым, не добавляя слишком много компонентов в общий модуль и не используя общий модуль везде, где он мог бы использоваться.



Плунжер с этими изменениями можно найти по этой ссылке; https://plnkr.co/edit/I4ArEQTniO7MJtfzpBWl?p=info

Код для общего модуля выглядит следующим образом:



import { NgModule }            from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';

import { PageNotFoundComponent } from './not-found.component';

@NgModule({
imports: [ CommonModule,
FormsModule],
declarations: [ PageNotFoundComponent
],
exports: [ PageNotFoundComponent,
CommonModule,
FormsModule ]
})
export class SharedModule { }


Цените любые мысли о том, какие шаги я пропускаю или что я такое делать зло.

590   1  

1 ответ:

Ошибка такова:

Error loading https://run.plnkr.co/5Q7FuGzCTzE1DQOa/app/shared/not-
found.component.ts as "./not-found.component" from 
https://run.plnkr.co/5Q7FuGzCTzE1DQOa/app/shared/shared.module.ts

Так поделились.модуль.ts находится в папке "app / shared", но пытается загрузить не найденный файл.компонент из того же каталога.

Глядя на ваш плунжер, не-найдено.компонент находится в папке "приложение".

Я считаю, что вам нужно переместить не найденный компонент в папку "app / shared".

Comments

    Ничего не найдено.