0
我需要使用(类型,名称)或任何其他ngrepeat组合来过滤具有多个变量的转发器。使用评估过滤转发器中的多个变量
单变量
我已经成功地做到了这一点使用一个变量,这样的:
element.all(by.repeater("org in orgs")).filter(function (elm) {
return elm.evaluate("org.type").then(function (orgType) {
if (orgType === "ORG_TYPE_FOO") {
return orgType;
}
});
}).then(function (elms) {
//...
});
尝试1
我已经试过,但评估()不似乎喜欢两个参数。 ORGNAME总是返回undefined
element.all(by.repeater("org in orgs")).filter(function (elm) {
return elm.evaluate("org.type", "org.name").then(function (orgType, orgName) {
if (orgType === "ORG_TYPE_FOO" && orgName === "NAME1") {
console.log(orgType + " ------ " + orgName);
return orgType;
}
});
}).then(function (elms) {
//...
});
尝试2
我在想,我可以在第一过滤后再次过滤榆树+评价,但我不能似乎得到因为榆树这一目标的工作是ElementArrayFinder
element.all(by.repeater("org in orgs")).filter(function (elm) {
return elm.evaluate("org.type").then(function (orgType) {
if (orgType === "ORG_TYPE_FOO") {
return orgType;
}
});
}).then(function (elms) {
elms.filter(function (elm) {
return elm.evaluate("org.name").then(function (orgName) {
if (orgName === "NAME1") {
return orgName;
}
});
}).then(function (elms) {
//...
});
});
非常感谢这工作完美! – goldjb