当我从角度预设创建新的 nx 工作区时,我想插入 .editorconfig、.eslintrc.json 和 .prettierrc 的自定义(公司范围)配置,而不是每次都复制它们。
有没有办法自定义 create-nx-workspace?
作为后备,我会对覆盖上述文件的某种“ng add ...”(或正确的 nx 替代方案)感到满意。
当我从角度预设创建新的 nx 工作区时,我想插入 .editorconfig、.eslintrc.json 和 .prettierrc 的自定义(公司范围)配置,而不是每次都复制它们。
有没有办法自定义 create-nx-workspace?
作为后备,我会对覆盖上述文件的某种“ng add ...”(或正确的 nx 替代方案)感到满意。
我借此机会研究了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
并且它具有我需要的形状。