Транспортир: Как получить объект Element из ElementFinder - PullRequest
0 голосов
/ 04 февраля 2019

У меня есть объект elementFinder, подобный этому:

this.spinnerContainer = element(by.id('spinnerContainer'));

И я хочу запустить скрипт в браузере с executeScript, где мне нужен spinnerContainer.Но getComputedStyle ожидает объект Element, а не ElementFinder.

browser.executeScript('return window.getComputedStyle(' + spinnerContainerElm + ', \':after\').content;').then((content) => {
   expect(content).to.eventually.equal('none').and.notify(callback);
});

Как я могу повторно использовать мой spinnerContainer (из типа ElementFinder) в вызове executeScript?

1 Ответ

0 голосов
/ 04 февраля 2019

попробуйте это:

browser.executeScript('return window.getComputedStyle(arguments[0], \':after\').content;',spinnerContainerElm).then((content) => {
   expect(content).to.eventually.equal('none').and.notify(callback);
});

Для функции executeScript требуются два параметра: сценарий для запуска и любые аргументы для этого сценария (в данном случае это элемент) См. Документацию

Подумав об этом снова, два параметра на самом деле могут не всегда требоваться, но описанный выше подход все же должен работать для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...