在我们的 Angular 项目中,我们使用 @ngneat/error-tailor 来显示表单错误: 我们感兴趣的是在触摸控件时显示错误消息,这是此 github 问题中请求的功能。甚至有一个 PR 涉及此更改,但自 2024 年 5 月以来没有任何活动。
我们想知道:是否有可能在我们的项目中仅覆盖 ControlErrorDirective 的行为而不分叉整个库,以便我们在不久的将来可以选择退出此覆盖?如果是的话,怎么办?
只需将源代码(
lib
)复制到您的项目的单独文件夹中,您的应用程序就可以像下面一样使用此代码。
import { provideErrorTailorConfig } from '@ngneat/error-tailor';
const config = {
errors: {
useValue: {
required: 'This field is required',
minlength: ({ requiredLength, actualLength }) =>
`Expect ${requiredLength} but got ${actualLength}`,
invalidAddress: error => `Address isn't valid`
}
}
};
bootstrapApplication(AppComponent, {
providers: [
{
provide: ErrorTailorConfigProvider,
useValue: config,
},
{
provide: FORM_ERRORS,
...config.errors,
},
]
})