我目前正在与巴比伦合作电子。我发现this repo我基本上用作我自己项目的样板文件。 在我尝试添加jquery.pep.js以满足其他需求之前,一切运行良好。 我继续犯这个错误:
未捕获错误:找不到模块'jquery.pep.js'
我用“npm i -S jquery”和“npm i -S jquery.pep.js”安装了两个库。为了使jquery工作,我在index.html
的头部添加了这个脚本<script> delete window.module; </script>
这行在main.js的顶部:
window.$ = window.jQuery = require('jquery');
现在,jquery工作正常,但由于某些原因,仍然无法找到jquery.pep.js模块。我尝试使用'require',但我有同样的错误
main.js
window.$ = window.jQuery = require('jquery');
var pep = require('jquery.pep.js');
项目结构
CSS /
img /
js /
- main.js
node_modules /
index.html的
index.js
的package.json
renderer.js
答案 0 :(得分:11)
您正在请求某些内容,而节点无法找到它。你可以阅读这个dedicated article on requiring modules in node,这很简单。引用:
当我们需要'find-me'模块时,不指定路径:
require('find-me');
节点将在指定的所有路径中查找
find-me.js
module.paths
- 按顺序。$ node > module.paths [ '/Users/samer/learn-node/repl/node_modules', '/Users/samer/learn-node/node_modules', '/Users/samer/node_modules', '/Users/node_modules', '/node_modules', '/Users/samer/.node_modules', '/Users/samer/.node_libraries', '/usr/local/Cellar/node/7.7.1/lib/node' ]
路径列表基本上是一个node_modules目录列表 从当前目录到根目录的每个目录。它 还包括一些不建议使用的旧目录。
如果Node在这些路径中找不到
find-me.js
,它将抛出一个 “找不到模块错误。”~/learn-node $ node > require('find-me') Error: Cannot find module 'find-me' at Function.Module._resolveFilename (module.js:470:15) at Function.Module._load (module.js:418:25) at Module.require (module.js:498:17) at require (internal/module.js:20:19) at repl:1:1 at ContextifyScript.Script.runInThisContext (vm.js:23:33) at REPLServer.defaultEval (repl.js:336:29) at bound (domain.js:280:14) at REPLServer.runBound [as eval] (domain.js:293:12) at REPLServer.onLine (repl.js:533:10)
确保将模块安装在节点知道为module.paths
的某个位置,或通过提供绝对路径引用该文件。