Как остаться в том же контексте после выполненияContext.EvaluateFunctionAsync ()? - PullRequest
0 голосов
/ 03 апреля 2019

Мне нужно работать с некоторыми страницами SPA и их областями действия.angularJS страницы DebuggingInfo не загружается;Поэтому я сначала использую функцию javascript, чтобы загрузить ее, затем мне нужно выполнить другую функцию javascript и получить информацию об Scope, но я не могу.так что же лучше сделать с ними?

var executionContext = await _page.MainFrame.GetExecutionContextAsync();

await executionContext.EvaluateFunctionAsync(@"() =>                                                        {
    angular.reloadWithDebugInfo();
}");

// the error happened in the next line
var someResult = await executionContext.EvaluateFunctionAsync(@"
() => 
{
    return angular.element(document.getElementsByClassName('testClassName')).scope();
}");

после этого, если использовать тот же контекст (executeContext), я получил EvaluationFailedException: контекст выполнения был уничтожен, скорее всего из-за навигации.

Мне нужен тот же самый контекст после отладки AngularJS, включенной на текущей странице (которая вызывает перезагрузку страницы).

...