Какой лучший способ внедрить JavaScript в Puppeteer? - PullRequest
0 голосов
/ 09 мая 2018

Я использую Puppeteer для создания PDF-файлов. В больших SPA довольно много раз, когда код ссылается на window, но на практике часто встречается window is not defined.

Если я запускаю код в контексте Puppeteer, то все должно быть в порядке, поскольку браузер без монитора должен иметь свойство window.

Я видел подход к созданию SPA в отдельном порту и открытию этого порта, но я не уверен, что это лучший подход к проблеме, так как я уже знаю JavaScript, который хочу запустить, и я просто хочу, чтобы он был выполнен в контексте Puppeteer.

Есть ли лучший способ выполнить JavaScript в Puppeteer? Возможно, используя что-то вроде puppeteer.setContent('<script>...</script>')?

Если вариант с отдельным портом - лучший, который у меня есть, то, возможно, я по умолчанию использую его.

1 Ответ

0 голосов
/ 10 мая 2018

Если я правильно прочитал ваш вопрос, вы, вероятно, захотите использовать page.evaluate;

page.evaluate(function(){
    const someVal = window._whatever.factory.producer.getContent()[1].node.value
    window._whatever.runAnotherThing(someVal);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...