Просто создайте новый сервис и добавьте метод в сервис.Затем введите сервис, где вы хотите использовать метод следующим образом:
Компонент, который использует сервис:
constructor(private myService: MyService) {
// you might need this next line in your case
myService.titleValidator = myService.titleValidator.bind(this)
}
ngOnInit() {
this.movieForm = this.fb.group({
title: ['', [Validators.required, this.myService.titleValidator()]],
...
}
и сервис выглядит следующим образом:
@Injectable({
providedIn: 'root' // this line means you don't need to add it to a providers array and it will be loaded on demand and is accessible at the root level, it creates a single instance of the service that is accessible anywhere
})
export class MyService {
constructor() { }
titleValidator(control: AbstractControl) {
// blah blah
}
}
* 1008В качестве альтернативы вы можете просто создать класс и
экспортировать его (экспортировать класс MyClass) в файл, в котором он объявлен, и
импортировать его в компоненте, который его использует.Но услуга более распространена в мире Angular.