量角器中的'$'选择器

Wis*_*hnu 5 angularjs angularjs-e2e protractor gulp-protractor

我在很多这样的例子中看到过$('.selector'),我也在使用它.那么这个$变量做了什么.这是我从量角器文档中得到的.

可以将对$的调用链接起来查找父项中的元素.

文档中没有$单独使用的示例.我们使用$到链element选择.

另外$('.selector')本身就是一个元素,我们做到这一点的时候element($('.selector')),这是一个错误.

那么如何$在量角器中使用这个选择器.它具有的所有功能吗JQuery $?我试过$('.selector').children说哪个children不是功能.

任何帮助是极大的赞赏.

谢谢!

Gun*_*son 8

看起来像jQuery语法,但它不是,它是Protractor的一部分.这就是为什么.children抛出错误,因为我们实际上并没有使用jQuery. $element(by.css())ie 的缺点版本

$('my-css'); 与...完全相同 element(by.css('my-css'));

他们也有$$同样的element.all(by.css())

尽管缺少文档,它并没有 必须使用的链接找到的子元素.即使用朱莉的量角器演示(我修改了示例):

describe('Protractor Demo App', function() {
  it('read the header', function() {
    browser.get('http://juliemr.github.io/protractor-demo/');
    $('h3').getText().then(function (val) {
      console.log(val);
    });
  });
});
Run Code Online (Sandbox Code Playgroud)

这打印出我找到的h3元素的标题.该$$$只是对CSS选择器的简写.

来源:这里是$$,这里是$,以及更多

这也是我发现的一个很好的文件(虽然它没有提到使用$$:http://luxiyalu.com/protractor-locators-selectors/

  • 是的,由于某些原因,Protractor API没有记录 - 而且这里只提到一次:https://github.com/angular/protractor/blob/master/docs/locators.md (2认同)