phantomjs:如何用object.assign函数运行脚本?

时间:2017-03-21 07:46:47

标签: javascript phantomjs

我尝试为使用Object.assign函数包含js的网站运行phantomjs脚本并收到错误:

TypeError:: undefined is not a function (evaluating 'Object.assign')

据我了解,phantomjs不使用ES-2015。所以我需要使用像this这样的polyfill。我尝试使用injectJs,includeJs甚至需要绝对url,但它仍然不起作用。

如何导入此js并运行脚本?

1 个答案:

答案 0 :(得分:0)

问题可能是在子框架中运行Object.assign的网页。如果是这样,您必须在该框架中使用polyfill。您可以使用以下PhantomJS表达式在页面上打印帧名称:

==================
Total Count : 7
==================
sumit  2017-02-01 00:00:00
probir  2017-02-01 00:00:00
subhajit  2017-02-01 10:40:30
supriyo  2017-02-09 10:40:30
rajdip  2017-01-01 00:00:00
indranil  2017-03-07 16:06:19
sudip  2017-03-07 21:17:24
Test Error [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in crite
ria expression.
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Data type misma
tch in criteria expression.
        at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(Unknown Source)
        at test_data_view.main(test_data_view.java:61)

如果是这样,您可以在每一帧中注入polyfill:

console.log('Current frames: ' + JSON.stringify(page.childFramesName()));