Angular 量角器:如何从ElementFinder获取元素对象
我有一个elementFinder对象,如下所示:Angular 量角器:如何从ElementFinder获取元素对象,angular,protractor,Angular,Protractor,我有一个elementFinder对象,如下所示: this.spinnerContainer = element(by.id('spinnerContainer')); 我想用executeScript在浏览器中运行一个脚本,我需要spinnerContainer。但是getComputedStyle需要一个Element对象,而不是ElementFinder browser.executeScript('return window.getComputedStyle(' + spinnerC
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);
});
如何在executeScript调用中重用spinnerContainer(来自type ElementFinder)?尝试以下方法:
browser.executeScript('return window.getComputedStyle(arguments[0], \':after\').content;',spinnerContainerElm).then((content) => {
expect(content).to.eventually.equal('none').and.notify(callback);
});
executeScript函数需要两个参数,即要运行的脚本和该脚本的任何参数(本例中为元素)
再次考虑这一点后,实际上可能并不总是需要这两个参数,但上述方法仍然适用于您。仅为澄清起见,SpinnerContainereRM=spinnerContainer。不需要在Element和ElementFinder之间进行转换