Как добавить оператор импорта узла в файл с угловыми схемами? - PullRequest
0 голосов
/ 17 мая 2019

Я хочу собственную схему, которая создаст страницу в моем приложении. Для этого я хочу использовать существующую базовую схему для создания модуля маршрутизации, затем создать компонент в этом модуле для отображения содержимого моей страницы и, наконец, соединить все вместе. Это "проволока все вместе", что поставило меня в тупик Я не могу найти четкого руководства по «правильному» пути к этому. Должен ли я:

а) напрямую изменить существующие файлы, созданные схемами "модуль" и "компонент"? (Я не знаю как это сделать)

б) использовать шаблоны для объединения изменений в файлы? (Я тоже не знаю как это сделать)

Ниже приведен файл index.ts для моей схемы страницы. То, что я не знаю, как это сделать, комментирует "TODO" в конце.

Пожалуйста, помогите!

import {
  externalSchematic,
  Rule,
  SchematicContext,
  Tree,
  chain,
} from '@angular-devkit/schematics';

export function page(options: any): Rule {
  const name = options.name;

  return chain([
    // create module for this page
    externalSchematic('@schematics/angular', 'module', {
      name: `pages/${name}`,
      routing: true
    }),

    // create simple component to display in this page
    externalSchematic('@schematics/angular', 'component', {
      name: `pages/${name}/${name}`,
      routing: true
    }),

    // add component to routing module
    (tree: Tree, _context: SchematicContext) => {
      // TODO 1: import new component into routing module
      // e.g. import { MyPageComponent } from "./my-page/my-page.component";

      // TODO 2: add component to routes
      // const routes: Routes = [{ path: '', pathMatch: 'full', component: MyPageComponent }];
      return tree;
    },
  ]);
}

...