Phantom Js,CasperJs外部脚本没有正确评估

时间:2013-01-12 19:48:08

标签: javascript server-side phantomjs casperjs

这里有趣的问题,我使用injectJs将外部文件(site.js)加载到我的phantomJs / CasperJs脚本中。它的加载很好,但函数没有评估,并作为字符串返回。

这是site.js:

var site = function(){
     this.getName = function(){
         return 'this is a name';
     }
}

这是我的phantom.js脚本:

casper.start();

casper.then(function(){
    phantom.injectJs('/path/to/site.js');
    mysite = new site(casper);
    name = mysite.getName;
    this.echo(name);

});

我希望控制台打印出来:'这是一个名字', 但它打印出来:'function(){this.getName = function(){return'这是一个名字'; }}“

我尝试使用eval()并无效(eval?)。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您忘记了()

name = mysite.getName();