Handling PhantomJS errors
PhantomJS scripts are not compiled, so we do expect that both runtime- and syntax-related errors could be thrown during script execution. These types of errors can be handled using the phantom
object's onError
callback.
If PhantomJS encounters a syntax error in the script, it will call the function defined for this callback; if there is no function defined for this callback, it will perform the default implementation and output the errors in the console as shown in the following screenshot:
PhantomJS will display the error message followed by a series of lines, which denotes the stack of the error call. It will also display the function or method with a source line number.
This information is also passed to any function that we've defined for the onError
callback. The onError
callback definition is as follows:
phantom.onError = function(msg, trace) { // code handling };
The onError
callback will accept two parameters as shown in the preceding code. The...