【问题标题】:How to require module within nested module ? javascript如何在嵌套模块中要求模块? javascript
【发布时间】:2018-02-26 11:37:50
【问题描述】:

我有以下项目结构:

WEBCONTENT /run.js
            utils /utils.js

这里是 run.js 文件:

var casper = require("casper").create();
var utils = require("../utils/utils");

这里是 utils.js 文件:

try{
 var x = require("casper").selectedPath;
}catch(error){
 console.log(error);//cannot find module casper
}

一旦我运行下面的命令:

casperjs run.js

我收到此错误:cannot find module casper 我尝试了其他路径,例如 ../casper./casper 。但没有运气!

请告诉我如何在 utils.js 中正确使用 require ?谢谢

请注意,我成功安装了 casperjs,没有任何问题!由于 run.js 中的 require 有效,但是 utils.js 中的 require 崩溃

【问题讨论】:

  • 你在尝试使用 casperjs 吗?如果是这样,请尝试npm install casperjs
  • 我猜你只做了 npm instal global 来启用 casperjs CLI。如果是这种情况,您需要按照 adam 的建议进行本地安装,因为您需要导入模块。
  • @Jalil 是的,我正在使用 casper ,run.js 中的 require 没有问题,只有 utils.js 中的 require 有问题
  • @spiritwalker 我已经成功安装了capserjs,没有问题!但是 utils.js 中 require 的问题

标签: javascript requirejs casperjs require


【解决方案1】:

对不起,我首先认为这是一个 nodejs 问题,并留下了一些误导性的 cmets。事实证明,这确实与 phantomJS 相关。

所以最简单的解决方案是对所有本机需求使用 patchRequire(例如所有与 casper 相关的模块。以下代码适用于我。

var require = patchRequire(require)
var casper = require('casper')

【讨论】:

    猜你喜欢
    • 2014-09-26
    • 1970-01-01
    • 2020-01-08
    • 2016-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2015-03-22
    相关资源
    最近更新 更多