Angularjs 页面对象技术的优点或区别

Angularjs 页面对象技术的优点或区别,angularjs,protractor,end-to-end,Angularjs,Protractor,End To End,我想知道使用一种页面对象定义方法与使用另一种方法是否有好处或区别: 页面对象技术1: titlePageHeader: { get: function () { return element.all(by.css('h3.panel-title')).get(0); }}, homeIcon: { get: function () { return element(by.css('a[title="Home"]')); }}, menuIcon: { get: function () { ret

我想知道使用一种页面对象定义方法与使用另一种方法是否有好处或区别:

页面对象技术1:

titlePageHeader: { get: function () { return element.all(by.css('h3.panel-title')).get(0); }},
homeIcon: { get: function () { return element(by.css('a[title="Home"]')); }},
menuIcon: { get: function () { return element(by.css('i.md.md-menu')); }},
页面对象技术2:

this.getTitlePageHeader = element.all(by.css('h3.panel-title')).get(0);
this.homeIcon = element(by.css('a[title="Home"]'));
this.menuIcon = element(by.css('i.md.md-menu'));
由于只有在对其执行操作时才会对其进行计算,因此使用getter处理正则变量没有任何好处。我会选择后一种选择,因为它感觉更熟悉

ElementFinder在调用操作之前不会实际尝试查找元素,这意味着可以在页面可用之前在帮助文件中设置元素

由于只有在对其执行操作时才会对其进行计算,因此使用getter处理正则变量没有任何好处。我会选择后一种选择,因为它感觉更熟悉

ElementFinder在调用操作之前不会实际尝试查找元素,这意味着可以在页面可用之前在帮助文件中设置元素


我觉得这有点关系。一本新的指南即将出版,请继续关注。谢谢亚历克。我猜一个返回函数,另一个返回承诺。我不知道这是否是指南的重点,但我想知道,因为我们现在正在讨论这一点。我认为这在某种程度上与。一本新的指南即将出版,请继续关注。谢谢亚历克。我猜一个返回函数,另一个返回承诺。我不知道这是否是指南的重点,但我想知道,因为我们现在正在讨论这个问题。