Angular 量角器单击()-获取元素不可单击

Angular 量角器单击()-获取元素不可单击,angular,protractor,wait,clickable,Angular,Protractor,Wait,Clickable,页面上有3行文本,单击每个链接可以展开下面的文本。上面的代码将单击文本的前两行,它们将展开,但当它尝试单击第三行时,它表示不可单击 这行应该做什么: mueElementColClickText=stestDataResultsets.expectedPTPHeader[index] mueElementColClickText是一个已定义的变量。你想给它设定新的价值,不是吗 也许您更愿意将mueElementColClickText与stestDataResultsets.expectedPT

页面上有3行文本,单击每个链接可以展开下面的文本。上面的代码将单击文本的前两行,它们将展开,但当它尝试单击第三行时,它表示不可单击

这行应该做什么:

mueElementColClickText=stestDataResultsets.expectedPTPHeader[index]

mueElementColClickText
是一个已定义的变量。你想给它设定新的价值,不是吗

也许您更愿意将
mueElementColClickText
stestDataResultsets.expectedPTPHeader[index]进行比较

另一件事:
filter
返回一个
ElementArrayFinder
[参见文档:


在最后一行中,您应该将
.click();
更改为
.first()。click();
未定义mueElementColClickText,但用于从承诺中获取值

当我给比较赋值时,我看不到它的价值,所以它们应该相等

.first().click();-如我所说,页面上有3个链接-如果我有。first().click();-第一个链接总是被单击的


感谢您的回复-我可以在单击之前检查它是否可单击吗?

我想可能会发生什么:

我将要单击的3个链接放入element.all数组中

然后,我做一个点击,以扩大所有3个链接

因此,单击第一个链接,并在其下打开一个20行的表格。此时,浏览器正试图找到要单击的第二个链接,但无法-其他人有此问题或如何解决此问题

element.all(By.id(psearchResult.ptpID, psearchResult.mueResCardHeader))
  .filter((mueElementColClick, index) => {
    return mueElementColClick.getText().then((mueElementColClickText) => {
      mueElementColClickText = stestDataResultsets.expectedPTPHeader[index];
      console.log('mueElementColClickText '+mueElementColClickText);
      browser.waitForAngular();
      return mueElementColClickText;
    });
  }).click();