Я ударил удар по дороге, пытаясь проверить электронную почту с помощью регулярного выражения. Я получаю неопределенную ошибку функции при попытке использовать встроенный метод JavaScript .test() для тестирования регулярных выражений. Существуют ли какие-то специальные ключевые слова для использования при ссылках на эти типы функций?Вызов js-функций в реакции-native
Спасибо! Я ценю ваш вклад.
Это два раздела кодов, вызывающих проблемы.
class LoginForm extends Component {
state = { email: '', password: '', warning: '', loading: false, color: '#FFFFFF' };
onButtonPress() {
const { email, password } = this.state;
this.setState({ loading: true });
this.setState({ warning: '' });
if (this.verifyEmail(email)) {
firebase.auth().signInWithEmailAndPassword(email, password)
.then(this.onLoginSuccess.bind(this))
.catch(() => {
firebase.auth().createUserWithEmailAndPassword(email, password)
.then(this.onLoginSuccess.bind(this))
.catch(this.onLoginFail.bind(this));
});
}
else {
this.onLoginFail.bind(this);
}
}
verifyEmail = (email) => {
const regex = '^[a-zA-Z0-9_.+-][email protected](?:(?:[a-zA-Z0-9-]+\.)?[a-zA-Z]+\.)? (gmail)\.com$';
return regex.test(email);
}
вы, кажется, пытается вызвать [ 'RegExp.prototype.test'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/ Reference/Global_Objects/RegExp/test) для объекта String. Попробуйте превратить вашу строку в реальный RegExp – Hamms
Yeap, что имеет смысл. Я уже давно не возился с js. Благодаря! – Gabe