如何在量角器中更新对象属性?

时间:2014-11-17 18:10:22

标签: protractor

我最近开始使用带有茉莉花框架的量角器,我也是javascript的新手。 对于具有10个属性的页面之一,我正在尝试为每个字段获取文本并在对象中更新此值。以下是示例代码

Var obj ={}

It('should get the value,function(){
    Element(by.id("id of firstfield")).getText().then(function(text){
        obj.firstfield = text
        Console.log(obj) //this correctly prints the updated object
    })

    Console.log(obj) // prints empty object. I need to get updated object here.

    Element (by.id("id of secondfield")).getText().then(function(text){
        obj.secondfield = text
        Console.log(obj) //this correctly prints the updated object
    })
})

如何获取值.then?

1 个答案:

答案 0 :(得分:1)

对.then块内的变量所做的更改不会反映在块外。要使更改在.then块之外可见,请使用return语句并在变量中收集返回的值。

将更新后的值返回给obj,然后通过.then

打印
obj = Element(by.id("id of firstfield")).getText().then(function(text){
    obj.firstfield = text
    Console.log(obj) //this correctly prints the updated object
    return obj;
})

看看这是否有帮助!