Угловой JS, локатор транспортира, получить прямые потомки элемента

У меня есть сетка, из которой я хочу выбрать все строки и ни один из элементов внутри строк

Строки - это просто div, нет классов и т. Д., Что-то вроде этого (для краткости внутреннее содержимое удалено)

<div class="grid">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>

Обычно с локатором транспортира вы можете просто пойти element(by.css(".grid > div"))

У меня проблема в том, что сетка уже является элементом транспортира, и я не могу ее контролировать, но все же хочу выбрать только ее прямых потомков.

var gridElement = element(by.css(".grid"));

Так что мне нужно что-то вроде

var rows = gridElement.all(by.css("> div"));

Но это не правильный CSS-селектор, так как отсутствует левая сторона. Кто-нибудь знает, как мне этого добиться?

РЕДАКТИРОВАТЬ: использование Protractor 1.0 и обновление версии, к сожалению, в крайнем случае

2 ответа

Решение

Вы также можете решить это с by.xpath():

var rows = gridElement.all(by.xpath("./div"));

Как сказал Кейси, это должно сработать:

var rows = gridElement.all(by.css("div:first-child"));

Другие вопросы по тегам