phantomjs:从其他一些函数或模块调用page.evaluate

时间:2013-01-31 15:14:35

标签: javascript phantomjs

我正在使用phantomjs来测试许多页面并尝试使我的代码更清晰。是否可以执行page.open并从其他一些函数或模块调用page.evaluate。 现在:

page.open(ADDRESS, function(status) {
           if (status == 'success') {
              page.evaluate(function() {
                return document.querySelector('.error');
                ...... do some more checks
              }):
              .....Run some other code
           }

我想做什么:

file check.js : exports.check = function() {
                 page.evaluate(function() {
                return document.querySelector('.error');
                ...... do some more checks
              }):

在main.js或其他文件中,我只是调用check.js的这个函数来进行检查。 这可能需要通过引用调用此函数,但不知道如何执行此操作。如果可以这样做,我的所有文件大小都将减少,代码将更具可读性。

1 个答案:

答案 0 :(得分:0)

exports.check = function(page){ page.evaluate(function() {
                return document.querySelector('.error');
                ...... do some more checks
              });

这就是我将phantomJs封装到脚本中的方式

更多样本@ https://github.com/ImaginaryDevelopment/javascript/tree/master/phantom