从GitHub下载模块并按照说明进行构建后,我尝试使用以下方法将其拉入现有项目:
> npm install ../faye
这似乎起到了作用:
> npm list
/home/dave/src/server
└─┬ faye@0.7.1
├── cookiejar@1.3.0
├── hiredis@0.1.13
└── redis@0.7.1
但是Node.js找不到模块:
> node app.js
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Cannot find module 'faye'
at Function._resolveFilename (module.js:334:11)
at Function._load (module.js:279:25)
at Module.require (module.js:357:17)
at require (module.js:368:17)
at Object.<anonymous> (/home/dave/src/server/app.js:2:12)
at Module._compile (module.js:432:26)
at Object..js (module.js:450:10)
at Module.load (module.js:351:31)
at Function._load (module.js:310:12)
at Array.0 (module.js:470:10)
我真的很想了解这里发生了什么,但我有点不知所措,不知道下一步该去哪里。有什么建议吗?
我在使用实时服务器(使用Fullstack React书)时遇到了这个问题:
我一直得到:
错误:找不到模块“”/禁用浏览器缓存.js'...
我不得不调整我的包.json
发件人:“脚本”:{...“server”:“实时服务器公共--主机=本地主机--端口=3000--中间件=./disable browser cache.js”...}“脚本”:{收件人:...“server”:“实时服务器公共--主机=本地主机--端口=3000--中间件=../../disable browser cache.js”...}
请注意,相对路径似乎已断开/尴尬…/变为..//
我在这里发现了问题
此外,如果有人跟随这本书:
将packages.json中的devDependencies更改为:
"live-server": "https://github.com/tapio/live-server/tarball/master"
目前,从v1.2.0升级到v1.2.1
使用nvm很好。最好安装Node的v13.14(*v14+会带来其他麻烦)nvm安装v13.14.0nvm别名默认值v13.14.0使用npm i-g更新npmnpm@7.3.0运行:npm更新您也可以使用npm列表来查看依赖关系的层次结构。(出于某种原因,node 15+最新的npm默认只显示第一级深度-a la package.json。这使得默认命令毫无意义!您可以追加--depth=n)以使命令再次更有用)。您也可以使用npm审计。存在需要更新(chokidar和其他一些软件包的更新)到更新版本的问题。live服务器尚未更新以支持较新的相应nodev14库版本。
请在此处查看类似帖子
脚注:另一件事,当你进入JSX部分时,请在这里查看我的答案:https://stackoverflow.com/a/65430910/495157
当您到达:
具有道具、状态和子级的高级组件配置。P182+,节点版本13不支持某些依赖项。稍后也会添加相关结果。
刚刚发现了一个不寻常的场景,可能对某人有用,有点转移注意力。
我也收到了“找不到模块”错误,但奇怪的是,在我的本地(Mac托管)Node.js环境中,一切都很完美。只有当代码部署在我们的Linux服务器上时,才会出现这个问题。
好结果发现这是一个拼写错误,(显然)基于Mac的Node.js安装非常乐意忽略。
包括如下内容:
var S3Uploader = require('./S3Uploader.class');
但实际的文件名为“s3Uploader.class.js”
请注意代码和文件名之间“s”与“s”的大小写差异。
因此,如果这里的其他解决方案都没有解决您的问题,那么请仔细检查您的文件名中的字符大小写是否正确!:)
还有啊!