如何在量角器中访问在promise中声明的变量

时间:2016-03-10 11:25:29

标签: javascript node.js promise protractor nodes

我有一个用例,我应该访问promise结果变量应限定为全局变量或外部范围

var mobileNumber = database.generateMobileNumber().then(function(number) {
return number;//number should be access outside this function scope
);

1 个答案:

答案 0 :(得分:1)

您可以声明一个变量并在函数返回的promise中赋值,并等到promise被解析。这是怎样的 -

var mobileNumber = '';
browser.wait(function(){
    return database.generateMobileNumber().then(function(number) {
        mobileNumber = number;
        return !!number;
    );
}).then(function(){
    //mobileNumber should be accessible here
});

注意:因为您不知道承诺何时返回,所以使用wait()函数应该会有所帮助,直到返回值。此外,如果您在某些操作后使用该值,则无需将wait()函数与.then()链接。

希望它有所帮助。