gpt4 book ai didi

javascript - 幻影;如果我在 page.evaluate() 中设置一个变量,我如何在 page.evaluate() 之外访问该变量的值

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:48:18 33 4
gpt4 key购买 nike

使用 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/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com