1
Я пытаюсь получить элементы в своей DOM и вернуть их как массив. Они вложены. Я хочу транспортир, чтобы вернуть что-то вроде этого:Транспортир: создание массива из вложенных элементов
{
category_title: "cat1",
items: {item_title: "item1"}, {item_title: "item2"}
},
{
category_title: "cat2",
items: {item_title: "item1"}, {item_title: "item2"}
}
DOM:
<div ng-repeat="category in categories">
<div id="category-title">{{ category.title }} </div>
<div ng-repeat="item in category.items">
<div id="item-title">{{ item.title }} </div>
</div>
</div>
Это то, что я пытаюсь в транспортир:
return element.all(by.repeater("category in categories")).map(function(elm) {
var category_title = elm.element(by.id('category-title')).getText(),
var t = {
category_title: category_title,
dimensions: {}
};
// After this part, I'm lost...
return elm.all(by.repeater("item in category.items")).map(function(elm) {
return {
category_title: category_title,
dimension: elm.element(by.id('item-title')).getText(),
}
});
});
, чтобы получить начальную Поставьте задание, вы замените 'items: elm.all (by.id (" item-title ")). getText()' с 'items: elm.all (by.id (" item-title ")). map (function (elm2) {return {item_title: elm2.getText()}}) ', но ваш ответ верен, только с несоответствием формата – hankduan