简体   繁体   中英

node.js: Error: Cannot find module

Why do I get this error?

Node v8.9.1

code

var childProcess = require('child_process'),
    phantomjs = require('/var/bin/node_modules/phantomjs-prebuilt');

console.error = function(){
    require('system').stderr.write(Array.prototype.join.call(arguments, ' ')+'\n');
    phantomjs.exit(1);
};

console.log('hey', phantomjs.path)
console.error('error')

childProcess.execFile(phantomjs.path, require('system').args, function(err, stdout, stderr){
    if(err){
        console.error(err);
    }

    if(stderr){
        console.error(stderr);
    }

    console.log(stdout);
});

error

# /var/bin/node_modules/phantomjs-prebuilt/bin/phantomjs phantom.js
Error: Cannot find module 'path'

  phantomjs://platform/bootstrap.js:299 in require
  phantomjs://platform/bootstrap.js:263 in require
  phantomjs://platform/phantomjs.js:10
hey undefined
TypeError: undefined is not a function (evaluating 'phantomjs.exit(1)')

  phantomjs://code/phantom.js:6 in error
error

system is not a Node built-in module, it's part of PhantomJS . It won't be available if you're just running your script with the standard node command. As shown in the documentation , you need to use the phantomjs command, like so:

phantomjs phantom.js

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM