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

Javascript 如何在量角器中访问在promise内声明的变量,javascript,node.js,promise,protractor,nodes,Javascript,Node.js,Promise,Protractor,Nodes,我有一个用例,在这个用例中,我应该访问promise结果变量,该变量的作用域应该是全局变量或外部变量 var mobileNumber = database.generateMobileNumber().then(function(number) { return number;//number should be access outside this function scope ); 您可以声明一个变量并在函数返回的承诺中赋值,然后等待该承诺得到解决。这是怎么做的- var mobile

我有一个用例,在这个用例中,我应该访问promise结果变量,该变量的作用域应该是全局变量或外部变量

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

您可以声明一个变量并在函数返回的承诺中赋值,然后等待该承诺得到解决。这是怎么做的-

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()

希望能有帮助