Как проверить и обработать ввод, когда электронная почта и телефон имеют одинаковое текстовое поле - PullRequest
0 голосов
/ 06 мая 2018

Я ищу способ справиться со следующим вариантом использования. Пользователь может ввести номер телефона или адрес электронной почты, чтобы получить маркер сброса пароля в ионном приложении. Я не могу изменить интерфейс пользователя, чтобы иметь два поля, так как BA не примет его. Следующий снимок экрана показывает MOCK UI:

Screenshot

Проблема: 1. Поскольку существует только одно поле ввода, как проверить, если пользователь ввел номер телефона или адрес электронной почты? Есть ли какое-либо определенное регулярное выражение для него?

  1. Поскольку существует только один вход, но два разных типа данных, как выбрать модель? Должен ли я иметь только одну модель (поле) типа string и использовать одну и ту же для обоих после проверки пользовательского интерфейса или использовать два разных поля как модель для этого сценария?

  2. Еще одна проблема - включить кнопку отправки, когда введен действительный адрес электронной почты или введен номер телефона. Номер телефона может быть международного типа.

1 Ответ

0 голосов
/ 06 мая 2018

Попробуйте вот так

var input = "your angular model input";
    var emailReg = /^([w-.]+@([w-]+.)+[w-]{2,4})?$/;
if(emailReg.test(input))
{
    $emailModel = input;
} else {
  var mobileRegex = /[0-9 -()+]+$/;
  if((input.length > 6) && (intRegex.test(input)))
  {
    $mobileModel = input; 
  }
}
...