-1

当我从角度预设创建新的 nx 工作区时,我想插入 .editorconfig、.eslintrc.json 和 .prettierrc 的自定义(公司范围)配置,而不是每次都复制它们。

有没有办法自定义 create-nx-workspace?

作为后备,我会对覆盖上述文件的某种“ng add ...”(或正确的 nx 替代方案)感到满意。

4

1 回答 1

0

我借此机会研究了Angular Schematics

我有一个小的“ng-add”原理图,它用我自己的文件覆盖文件并安装所需的依赖项。

由于这些都是根目录中的文件,因此原理图规则很简单(files如建议的文件夹中的所有模板):

import {
  Rule,
  SchematicContext,
  Tree,
  apply,
  url,
  mergeWith,
  template,
  MergeStrategy,
} from "@angular-devkit/schematics";

export function ngAdd(options: any): Rule {
  return (tree: Tree, context: SchematicContext) => {
    const templateSource = apply(url("./files"), [template(options)]);
    const merged = mergeWith(templateSource, MergeStrategy.Overwrite);
    return merged(tree, context);
  };
}

因此,在我创建了工作区之后,npx create-nx-workspace --preset=angular我可以做到,nx add my-schematics并且它具有我需要的形状。

于 2021-10-09T09:01:36.180 回答