Ну, решение, которое я нахожу, немного безобразно. В основном вам нужно зарегистрироваться на входное событие ввода и изменить его значение, чтобы оно содержало дефисы. Вам также придется очищать дефисы при принятии значений формы.
Таким образом, функция добавления дефисов будет выглядеть примерно так:
export class InputPrefixSuffixExample {
designedValue: string = "";
design(inputValue: string) {
if (inputValue.length > 6) {
this.designedValue = inputValue.substr(0, 7) + "-" + inputValue.substr(8, 12);
} else if (inputValue.length > 2) {
this.designedValue = inputValue.substr(0, 3) + "-" + inputValue.substr(4, 6);
}
}
}
В качестве альтернативы вы можете использовать библиотеки, чтобы помочь вам в этом. Самая популярная библиотека - это маска ngx. https://www.npmjs.com/package/ngx-mask