量角器 通过 ng 单击进行迭代
Protractor Iterate through ng-click
我有以下代码
<div class="btn btn-success form-control ng-binding" ng-click="test(uid)">
First
</div>
<div class="btn btn-success form-control ng-binding" ng-click="test(uid)">
Second
</div>
<div class="btn btn-success form-control ng-binding" ng-click="test(uid)">
Third
</div>
如何基于 ng-click 迭代元素以检查量角器中的特定文本值(第一、第二或第三)?我尝试了以下内容,但我没有为 uids.length 定义。这是怎么回事?
var uids = element.all(by.css('[ng-click="test(uid)"]'));
for(var i=0;i<uids.length;i++)
console.log(uids.get(i).getText());
问题是element.all()返回一个ElementArrayFinder
而不是一个简单的数组。如果您查看链接的文档,您将看到一些允许您轻松交互该数据结构的函数。我相信你想像这样使用 each() 函数:
element.all(by.css('[ng-click="test(uid)"]')).each(function(element, index) {
element.getText().then(function (text) {
console.log(text);
});
});
另外值得注意的是,getText() 函数与量角器中的几乎所有函数一样,返回一个承诺,因此需要先解决,然后才能访问真正想要的值。
相关文章:
- 如果30秒未单击,请应用CSS一次,将其删除,然后重新迭代
- 按索引迭代数组时,单击提交按钮Ruby on Rails
- JQuery 添加表单元素迭代 ID
- 每次单击一次迭代两个数组并制作动画
- 本地存储迭代获取 for 循环内单击的按钮的值
- 不读取 while 循环中表单元素第一次迭代 ASP.NET
- 在 ractive.js 中使用具有 2 向绑定和迭代的单选按钮
- 每次单击按钮都要对字符串中的每个字母进行迭代
- 如何在点击函数javascript中显示当前循环迭代
- 传递迭代变量以单击循环内部的事件
- 带有点击行为的activejs迭代器
- 在每次循环迭代中单击不同的按钮
- 迭代并更改表单中的值
- 在Angular.js中,如何在点击时使用ng-repeat迭代对象列表中修改元素的属性?
- HTML5音频-重复播放声音点击,不管之前的迭代是否已经完成
- Javascript中的表单元素迭代
- JQuery在点击时循环迭代
- 如何将.delay添加到.点击.每次迭代(jquery)
- 量角器 通过 ng 单击进行迭代
- 单击一起处理迭代中的所有项目 - AngularJS