首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用parentElementArrayFinder定位父元素

使用parentElementArrayFinder定位父元素
EN

Stack Overflow用户
提问于 2017-08-14 21:18:55
回答 2查看 2.7K关注 0票数 19

ElementFinder对象上有一个可用的parentElementArrayFinder attribute,据我所知,它可以返回当前的父元素:

代码语言:javascript
复制
var myElement = $(".myclass");
var parentElement = myElement.parentElementArrayFinder;

但是,它并没有作为Protractor's public API的一部分进行记录。parentElementArrayFinder是定位父元素的可靠且稳定的方法,并且总是返回与myElement.element(by.xpath(".."))相同的元素吗

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-12-13 10:31:26

总结评论,现有的答案,我的观察和源代码,parentElementArrayFinder应该并且只能在您为其获取parentElementArrayFinder的元素是从元素“链接”的情况下使用。

这将会起作用:

代码语言:javascript
复制
var parent = element(by.css(".parent"));
var child = parent.element(by.css(".child"));

child.parentElementArrayFinder  # link to "parent" - defined

这不会:

代码语言:javascript
复制
var child = element(by.css(".child"));

child.parentElementArrayFinder  # no link to "parent" - undefined
票数 2
EN

Stack Overflow用户

发布于 2017-08-31 07:54:10

我找到了ElementFinder here的代码,它有一个parentElementArrayFinder here的道具。

从我在代码中找到的。如果parentElementArrayFinder不存在,它将抛出错误。

代码语言:javascript
复制
super();
if (!elementArrayFinder) {
  throw new Error('BUG: elementArrayFinder cannot be empty');
}
this.parentElementArrayFinder = elementArrayFinder;

由此,我们可以放心地假设它将一直存在,所以我认为它可以安全地使用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45675462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档