2

我想要一个自定义原理图,它将在我的应用程序中创建一个页面。为此,我想使用现有的核心原理图创建一个路由模块,然后在该模块中创建一个组件来显示我的页面内容,最后将所有内容连接在一起。让我难过的是“将所有东西连接在一起”。我找不到关于“正确”方法的明确指导。我是不是该:

a) 直接修改“模块”和“组件”原理图创建的现有文件?(我不知道该怎么做)

b)使用模板以某种方式将修改合并到文件中?(我也不知道该怎么做)

以下是到目前为止我的页面示意图的 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;
    },
  ]);
}

4

0 回答 0