Предоставление переменных из вызова PhantomJS для injectJS

Я следовал примерам внедрения jQuery со страницы начала работы, и это прекрасно работает. У меня есть локальная копия JQuery в том же каталоге, и сделать что-то вроде ...

<code>if(page.injectJs('jquery.min.js')) {
  page.evaluate(function(){
    //Use jQuery or $ 
  }
}
</code>

Когда я пытаюсь внедрить свои собственные сценарии, ни одна из функций не доступна для меня. Скажем, у меня есть скрипт с именем myScript.js, который просто

<code>function doSomething() {
  // doing something...
}
</code>

Я не могу тогда использовать что-то вроде ...

<code>if(page.injectJs('myScript.js')) {
  console.log('myScript injected... I think');
  page.evaluate(function() {
    doSomething();
  });
} else { 
  console.log('Failed to inject myScript'); 
}
</code>

Я пытался

<code>window.doSomething = function() {};
</code>

а также

<code>document.doSomething = function() {};
</code>

а также без удачи, а также пытаясь вызвать их с помощью window.doSomething () или document.doSomething () в последующей page.evaluate ().

Ответы на вопрос(1)

Ваш ответ на вопрос