![](/img/trans.png)
[英]'Object is not a function' error when trying to use Page Object with Protractor
[英]How to use page object variable on protractor .each() function?
我想知道如何在.each()
函数上使用页面对象变量。
场景是我单击“删除”链接,将显示甜蜜警报确认,并且我必须确认该对话框才能删除数据。
这是我的页面对象:
'use strict';
// page object name
var Data = function()
{
// all delete links
this.delete_links = element.all(by.css('div[ng-click="delete(Data.id)"]'));
// confirm button
this.btn_confirm = element(by.css('.confirm'));
// delete function
this.delete = function()
{
// delete all links with confirmation
this.delete_links.each(function(element, index)
{
// click delete link
element.click().then(function()
{
browser.sleep(1000);
});
// click yes
this.btn_confirm.click().then(function()
{
browser.sleep(1000);
});
});
};
};
module.exports = Data;
this
里面的“每个”功能/回调没有指向的页面对象本身。 要修复它,请定义一个变量并将其设置为this.btn_confirm
:
this.delete = function()
{
// delete all links with confirmation
this.delete_links.each(function(element, index)
{
var confirmButton = this.btn_confirm;
// click delete link
element.click().then(function()
{
browser.sleep(1000);
});
// click yes
confirmButton.click().then(function()
{
browser.sleep(1000);
});
});
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.