作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
使用 PhantomJS 考虑以下代码片段:
var reloadAfterLogin = false;
function(user, pass, debug){ // step 3 submit Login
page.evaluate(function(user, pass, debug){
if($("form").attr("action").indexOf("login.do") > 0){
reloadAfterLogin = true;
$('form').submit();
}
}, user, pass, debug);
},
据我了解,这不仅仅是一个范围问题。 page.evaluate() 内部执行的代码是一个完整的独立 JavaScript 实例。我不得不承认我仍然很难理解 PhantomJS 是如何工作的,但我需要访问 page.evaluate() 之外的 reloadAfterLogin 变量。我该怎么做?
最佳答案
您可以从 evaluate
中返回
回调。我猜你想要
function(user, pass, debug){ // step 3 submit Login
reloadAfterLogin = page.evaluate(function(user, pass, debug){
if($("form").attr("action").indexOf("login.do") > 0){
$('form').submit();
return true;
}
return false;
}, user, pass, debug);
}
关于javascript - 幻影;如果我在 page.evaluate() 中设置一个变量,我如何在 page.evaluate() 之外访问该变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21687730/
我是一名优秀的程序员,十分优秀!