Я пытался получить текущий URL-адрес и хочу вырезать части URL-адреса для использования в другом методе. Я пробовал много способов, и одно решение, которое я видел в Интернете, предложил использовать метод beforeEach()
. Я пробовал это и неважно, this.urlString
всегда возвращает неопределенные.Транспортир: Сохранение URL-адреса в переменной для разбора возвращает «undefined»
Heres то, что у меня есть. Мне, должно быть, что-то не хватает, почему это возвращается неопределенно, но я не могу понять это.
this.urlString;
beforeEach(function() {
mainPO.navigateHome();
mainPO.clickCurrent();
browser.getCurrentUrl().then(function (url) {
return this.urlString = url;
});
});
console.log(this.urlString)
То, что я хочу сделать, это сохранить URL в строку, а затем разобрать строку вырезать все до «.com» в URL, так что я могу взять строку и вставить его в другой URL для переползая по другой ссылке.
Если я использую это, я был бы в состоянии назвать this.urlString, чтобы получить URL? Или мне нужно придерживаться этого в другом методе для вызова? В сущности, вместо console.log (url), я использую url.split (". Com"). Pop(), чтобы удалить .com и все, что было в URL, чтобы я мог подключить результат к другому объекту , – user249656
@ user249656 да, но вы всегда должны помнить, что 'urlString' вернет вам обещание, которое необходимо решить. – alecxe
Спасибо! У вас есть какие-либо статьи/ссылки, объясняющие обещания, и поэтому я понимаю их лучше? – user249656